24. april 2004 - 19:10Der er
32 kommentarer og 1 løsning
Virker ikke - hvorfor?
Kan en af eksperterne finde ud af, hvorfor mit script ikke virker. Der bliver intet hentet fra db'en, selvom der er poster i den, og jeg får heller ikke nogen fejlmeddelelse.
'asp herfra------------------------ 'hvis session("brugerID") er tom så er man ikke logget ind. if session("brugerID") = "" then Response.write"<tr><td width='100%'><p align=center><font face=Verdana color=#000000><b>Du er ikke logget ind!</b></font></td></tr>" Else
Response.Write "<table width=80% border=0 align=center cellpadding=5 cellspacing=0>" Response.Write "<tr bgcolor=#98C4B8><th><font color=black face=verdana size=2>Tekst</font></th><th><font color=black face=verdana size=2>Startdato</font></th><th><font color=black face=verdana size=2>Slutdato</font></th><th><font color=black face=verdana size=2>Slet </font></th></tr>" intCount = 0 Do while NOT (rs.EOF or rs.BOF) if (intCount MOD 2 = 0) then bgColor = "#cccccc" 'Første farve
Ja, nu kan jeg godt se fejlen. session("brugerID") referer til ID nummeret i min logintabel, og ikke til et ID i tabellen meddelelse. Meddeler i tabellen meddelelse er lig med brugerID i logintabellen, så hvordan laver man lige det?
Prøv at se her. Dette lille script udskriver navnet på den "meddeler", som er logget på.
<% 'asp herfra------------------------ 'hvis session("brugerID") er tom så er man ikke logget ind. if session("brugerID") = "" then Response.write"<tr><td width='100%'><p align=center><font face=Verdana color=#000000><b>Du er ikke logget ind!</b></font></td></tr>" Else Response.write"<div align=center><center><table border=0 width=70% bgcolor=#98C4B8>"
Response.write"</tr></table></center></div>" end if %> Burde det her så ikke virke?
<% ' Databaseforbindelse Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath ("/nyreservation/skoleweb.mdb") Conn.Open DSN strSQL ="SELECT tekst,startdato,slutdato,id FROM meddelelse WHERE meddeler=" & session("brugernavn") & " AND tekst='" & tekst & "' AND startdato='" & startdato & "'AND slutdato='" & slutdato & "' AND Id='" & Id & "'" Set rs = Conn.Execute(strSQL) response.write strSQL
' Hvis der er fundet poster på søgningen
'asp herfra------------------------ 'hvis session("brugerID") er tom så er man ikke logget ind. if session("brugerID") = "" then Response.write"<tr><td width='100%'><p align=center><font face=Verdana color=#000000><b>Du er ikke logget ind!</b></font></td></tr>" Else
Response.Write "<table width=80% border=0 align=center cellpadding=5 cellspacing=0>" Response.Write "<tr bgcolor=#98C4B8><th><font color=black face=verdana size=2>Tekst</font></th><th><font color=black face=verdana size=2>Startdato</font></th><th><font color=black face=verdana size=2>Slutdato</font></th><th><font color=black face=verdana size=2>Slet </font></th></tr>" intCount = 0 Do while NOT (rs.EOF or rs.BOF) if (intCount MOD 2 = 0) then bgColor = "#cccccc" 'Første farve
strSQL ="SELECT tekst,startdato,slutdato,id FROM meddelelse WHERE meddeler=" & session("brugernavn") & " AND tekst='" & tekst & "' AND startdato='" & startdato & "'AND slutdato='" & slutdato & "' AND Id='" & Id & "'"
Hvor får du alle de variabler fra? (tekst, startdato osv)
OK. Bemærk lige, at jeg kan udskrive session("brugernavn") som navnet på meddeleren. Jeg må vel derfor skulle bruge session("brugernavn") i min SELECT og ikke session("brugerID"). Kolonnerne i db'en hedder tekst, startdato, slutdato og meddeler, og de er alle af tekstypen (sorry).
[Microsoft][ODBC Microsoft Access-driver] SELECT-sætningen indeholder et reserveret ord eller argument, der er stavet forkert eller mangler, eller tegnsætningen er ikke korrekt.
Her er sql'en cut'n pasted. Kan du se fejlen
strSQL = "SELECT tekst,startdato,slutdato,Id, FROM meddelelse WHERE meddeler='" & session("brugernavn") & "'" Id er jo ikke et tekstfelt, men det skulle vel ikke betyde noget i den her forbindelse?
Pædagogik er fint her på Eksperten, men tålmodighed er bedre.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.