webForumDet fria alternativet

problem med att få till en If-sats...

ASP

6 svar · 302 visningar · startad av LearningASP

Medlem sedan okt. 2001127 inlägg
Frågan#1

Jag har ett litet problem med en If-sats jag kanske tänker lite fel men snälla hjälp.

jag har en sida där man kan rösta på bilder en gång om dan och när någon av användarna har röstat så sätter jag en dateadd på 1 dag i databasen och sen kör jag en if-sats som kolla om röstningsknappen ska ll visas eller om man skall skriva ut texten "du har redan röstat idag"

men jag har flera bildarkiv från tidigare veckor men knappen skall bara visas i vissa bildarkiv så detta har jag löst med hjälp av en QueryString

så saken är den jag vill ha att när QueryStringen rosta=sant då ska knappen visas och sen ska den även kolla om man redan har röstat en gång.

jag skrev denna if-satsen, men då skrivs "Du har redan röstat en gång idag" hela tiden.

SQL = "SELECT usr_ID, usr_pic_vote FROM userinfo WHERE usr_ID = " & session("user_id") & " "
					'Response.Write(SQL)
					set rs = objConn.Execute(SQL)
		
					If rs("usr_pic_vote") = Date AND strVote="sant"  Then 
						%>
						
						<input type="submit" name="" value="R&ouml;sta" border="0">
						<input type="hidden" name="frmbildnamn" value="<%=strBild%>" border="0">
						<input type="hidden" name="frmsokvag" value="<%=strMapp%>" border="0">
						</form>					
					<% Else
						Response.Write("Du har redan röstat en gång idag")						
					End If

tack på förhand

Medlem sedan juni 20019 519 inlägg
#2

elseif behöver man väll inte... eller du har fler än 2 val möjligheter?

Medlem sedan okt. 2001127 inlägg
#3

:r jag hade skrivit lite fel i kodden jag la in här, men jag har rättat till det nu, så som koden ser ut nu, så var den när jag provade.

Medlem sedan okt. 2001127 inlägg
#4

- dubbelpost -

Medlem sedan mars 20015 287 inlägg
#5

QueryStringen rosta=sant

eller

strVote="sant"

kan felet ligga där?

Medlem sedan okt. 2001127 inlägg
#6

jag förtydligar det hela...

jag har ett problem jag måste lösa, det är följande problem. jag har en sida där man kan rösta på bilder och man ska bara kunna rösta en gång/dag och jag har bilder från olika veckor och man ska bara kunna rösta på den aktuella veckan och detta har jag löst genom att skicka med en QueryString som är ?rosta=sant och sen har jag ett fält i användardatabasen som lägger på en dag på datumet så att man inte ska kunna rösta mer den dagen... och på sidan som presenterar bilderna känner jag av med en If-sats om rösta knappen skall visas eller ej, men jag får det inte att funka med denna kod:

strVote = Request.QueryString("rosta")

SQL = "SELECT usr_ID, usr_pic_vote FROM userinfo WHERE usr_ID = " & session("user_id") & " "
'Response.Write(SQL)
set rs = objConn.Execute(SQL)

      strDbDate = rs("usr_pic_vote")

      If strDbDate \<= Date AND strVote="sant" Then 
        %\>
        
        \<input type="submit" name="" value="Rösta" border="0"\>
        \<input type="hidden" name="frmbildnamn" value="\<%=strBild%\>" border="0"\>
        \<input type="hidden" name="frmsokvag" value="\<%=strMapp%\>" border="0"\>
        \</form\>
      \<%
      Else
        'Response.Write("Du har redan röstat en gång idag")            

      
        rs.close
        SET rs = Nothing
        objConn.close
        Set objConn = Nothing
      
      End If 

tänker jag helt fel? eller ska inte detta funka? tack på förhand om ni löser detta blir jag såååå glad :)

Medlem sedan mars 20015 287 inlägg
#7

Själv vet jag inte riktigt hur man jämför datum, men skall det inte till datediff eller något?

Vidare bör du väl plocka ut stängningen av databasen utanför din If-sats. (Såvida du inte använder den vidare på sidan.)

257 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)