problema con condizione if...
oliweb76 non è online. Ultima attività: 10/08/2008 20.02.57oliweb76
Inserito il: 04 agosto 2008 21.58
341 messaggi dal 25 mag 2001 Istalla Microsoft Silverlight!
sto aggiungendo una funzionalità ad un forum aspbb! ho aggiunto il campo numerico "mcrediti"! ongi volta che inserisco una discussione mi scala di un credito adesso però il problema è far inserire le discussioni solo a quelli che hanno + di un credito e a quelli che hanno 0 crediti far visualizzare un messaggio che li avvisa che nn hanno crediti!

ho fatto così:


'CREO UNA FUNZIONE CHE TI FACCIA QUESTO CONTROLLO e CHE ACCETTI COME PARAMETRO IN INGRESSO LA LOGIN O L'ID DELL'UTENTE
Function VerificaNumeroCrediti(userid)
dim strSQL,result
result = false
strSQL = "SELECT mcrediti FROM aspbb_members where mid = " & userid
set Rs = Conn.Execute(strSQL)
if not Rs("mcrediti") = 0 then
Reponse.Write "no credit! no party"
end if
VerificaNumeroCrediti = result
End Function

A questo punto, nella parte di codice dove c'è il form metto una IF di questo tipo:


IF VerificaNumeroCrediti(userid) then
'fai visualizzare il form per l'inserimento del topic
END IF


però mi esce sempre il messaggio "no credit! no party" sia che abbia 0 crediti sia che ne abbia 1 o +!

come mai? dove sbaglio?
qualcuno ha un'altro suggerimenti su come fare?
grazie

RE: problema con condizione if...
m.casati non è online. Ultima attività: 05/09/2008 16.09.18m.casati
Inserito il: 05 agosto 2008 09.14
contributi / Top Poster / Community manager / www.guru4.net / Blog / 2302 messaggi dal 13 giu 2001 Istalla Microsoft Silverlight!
oliweb76 ha scritto:
mi esce sempre il messaggio "no credit! no party" sia che abbia 0 crediti sia che ne abbia 1 o +!

Ci sono un po' di cose che non mi tornano nel tuo codice:
1) nella funzione non assegni mai a true il valore di ritorno (result)
2) "if not Rs("mcrediti") = 0..." vuol dire che i crediti ci sono o no? Mi viene il dubbio che la query non restituisca il valore che ti aspetti.

HTH

Matteo Casati
GURU4.net
RE: problema con condizione if...
oliweb76 non è online. Ultima attività: 10/08/2008 20.02.57oliweb76
Inserito il: 05 agosto 2008 15.05
341 messaggi dal 25 mag 2001 Istalla Microsoft Silverlight!
prima avevo fatto così:
Function VerificaNumeroCrediti(UserID)
dim strSQL,result
result = false
strSQL = "SELECT mcrediti FROM aspbb_members where user_id = " & UserID
set Rs = Conn.Execute(strSQL)
if not Rs.eof and not Rs("mcrediti") = 0 then
result = true
end if
VerificaNumeroCrediti = result
End Function


però mi dava lo stesso problema!

una soluzione più semplice?

grazie

RE: problema con condizione if...
oliweb76 non è online. Ultima attività: 10/08/2008 20.02.57oliweb76
Inserito il: 06 agosto 2008 00.54
341 messaggi dal 25 mag 2001 Istalla Microsoft Silverlight!
non mi da nessun errore però se faccio il response.write sul campo dei crediti mi da sempre 0 (zero) perchè?

dim result
strSQL = "SELECT mcrediti FROM aspbb_members where mid = " & userID
objDAL.open result, strSQL, array(userID)
result = cint(request("mcrediti"))
response.Write(result)
Response.End()
if result = 0 then
response.Write"no credit! no party!"
else
if result > 0 then
'visualizza il form


mi restituisce sempre zero sia che un utente abbia 0 crediti sia che ne abbia più di 1!
il campo mcrediti è numerico!
grazie

RE: problema con condizione if...
pinoga non è online. Ultima attività: 30/08/2008 18.05.49pinoga
Inserito il: 30 agosto 2008 18.05
3 messaggi dal 03 apr 2006 Istalla Microsoft Silverlight!
a mio parere devi controllare (sempre che userid sia valorizzato?) se i record estratti dal database sono almeno 1 o nessuno, e questo lo fai sostituendo il codice di controllo:
"if not Rs.eof and not Rs("mcrediti") = 0 then result = true"
con:
"if not Rs.eof and not rs.BOF then result = true"

questo per sapere se sei ad inizio o fine record (se la query non restituisce record "mcrediti" sara sempre nullo o 0).

spero di essere stato chiaro.

Ciao

Vai a:
Torna al forum |   Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.


maltra - 701 pt
vladimiro - 471 pt
fabrica - 180 pt

Ultimi vincitori: fabrica, vladimiro, PeppeDotNet

Iscriviti anche tu e raccogli punti. Questo mese in palio VS 2008 + Windows Server 2008, ReShaper e 1 ebook!



COMMUNITY
ULTIMI MESSAGGI


IN EVIDENZA
MISC
Powered by .db Forums