Avatar billede bajads Nybegynder
26. marts 2003 - 13:50 Der er 30 kommentarer og
2 løsninger

Skriv til database og huske asp?=ID

Dette er linket til min pop up side:

<a href="write_review.asp?LagID=<%Response.Write strColumnID %>"

Dette er "form" paa min pop up side:

<form method="post" action="Review_records.asp?LagID=<%Response.Write strColumnID%>" ID="Form1">
                <LABEL for="t4">Headline:</LABEL>
                <INPUT id="t4" type="text" name="Overskrift" size="20"><BR>
                <LABEL for="t5">Review:</LABEL>
                <textarea cols="20" id="t5" name="Anmeldelse" rows="5"></textarea><br>
                <LABEL for="t5">Caracter:</LABEL><br>
                <LABEL for="t5">&nbsp;&nbsp;1&nbsp;&nbsp;&nbsp;2&nbsp;&nbsp;&nbsp;3 &nbsp;&nbsp;&nbsp;4 &nbsp;&nbsp;&nbsp;5</LABEL>
                <br>
                <input type="radio" name="Caracter" value="1" ID="Radio1">
                <input type="radio" name="Caracter" value="2" ID="Radio2">
                <input type="radio" name="Caracter" value="3" ID="Radio3">
                <input type="radio" name="Caracter" value="4" ID="Radio4">
                <input type="radio" name="Caracter" value="5" ID="Radio5">
                <br>
                               
                <align="right">
                <input type="reset" value=" Cancel " ID="clear" NAME="Reset1" id="clear">
                <input type="submit" value="Submit Review" size="20" ID="submit" NAME="Submit1"></align>
</form>


Dette er saa modtageren af indputtet fra "pop up siden" :

<%


Dim connection
Set connection = Server.CreateObject( "ADODB.Connection" )

Dim strConnectionString
strConnectionString = "Provider = Microsoft.Jet.OLEDB.4.0" & _
        ";Data Source=" & Server.MapPath( "vinsaeldalisti.mdb" ) & _
        ";Persist Security Info=False"
connection.Open strConnectionString

Dim Overskrift
Overskrift = Request.Form ( "Overskrift" )

Dim Anmeldelse
Anmeldelse = Request.Form ( "Anmeldelse" )

Dim Caracter
Caracter = Request.Item ( "Caracter" )

Dim LagID
LagID = Request.QueryString ( "LagID" )

strSQL = "INSERT INTO Review ( Headline, Reviews, StarReviews, LagID ) VALUES ('" & Overskrift & "', '" & Anmeldelse & "', " & Caracter & ", " & LagID & " )"

connection.Execute(strSQL)
connection.Close
Set connection = Nothing
%>


Hvad er der galt, jeg skal gerne have overfört min asp?=LagID adresse med over i databasen, saa jeg kan hente review´en senere paa en anden side !!!

Jeg faar fölgende fejl, i förste omgang:

Syntax error in INSERT INTO statement.

Derudover syntes jeg at pop uppen er rimelig langsom !!
Avatar billede ellebaek Nybegynder
26. marts 2003 - 13:59 #1
strSQL = "INSERT INTO Review ( Headline, Reviews, StarReviews, LagID ) VALUES ('" & Overskrift & "', '" & Anmeldelse & "', '" & Caracter & "', " & LagID & " )"
Avatar billede sbm Nybegynder
26. marts 2003 - 14:02 #2
Det er ikke sikkert der er noget galt med din SQL.

Jeg ser at du har GET parametre i din ACTION, men har sat din METHOD=POST

Jeg mener at have erfaret, at den i så fald smider dine GET-parametre væk, og derfor får du ikke overført dit LagID som du ellers gerne vil.

Du skal istedet tilføje et HIDDEN felt i din FORM.

<input type="hidden" name="LagID" value="<%=strColumnID%>">

Linien skal naturligvis stå et sted mellem dit <FORM> og </FORM> tag. ;-)
Avatar billede bajads Nybegynder
26. marts 2003 - 14:02 #3
Dette var ikke lösningen - jeg faar stadig den samme fejl melding:

Syntax error in INSERT INTO statement.
Avatar billede bajads Nybegynder
26. marts 2003 - 14:03 #4
sidste kommentar var til ellebaek
Avatar billede sbm Nybegynder
26. marts 2003 - 14:03 #5
PS: 150 point er ALT for meget. 60 vil være mere passende.
Avatar billede bajads Nybegynder
26. marts 2003 - 14:05 #6
Dette er den seneste fejlmeddelse efter jeg har submitted:

Microsoft JET Database Engine (0x80040E14)
Syntax error in INSERT INTO statement.
/hopur31/Review_records.asp, line 36


Browser Type:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.0.3705)

Page:
POST 78 bytes to /hopur31/Review_records.asp

POST Data:
LagID=&Overskrift=dsfasdf&Anmeldelse=asdfasdf&Caracter=4&Submit1=Submit+Review

Time:
26. mars 2003, 13:04:06
Avatar billede bajads Nybegynder
26. marts 2003 - 14:06 #7
med 150 point ved jeg, at jeg faar noget jeg kan bruge...mange "surfer" hen over de billige sprg.
Avatar billede sbm Nybegynder
26. marts 2003 - 14:08 #8
Prøv at skrive din SQL sætning ud til skærmen, og lad være med at submitte den. Hvordan ser den ud? Har du fået dit LagID med?

Prøv at smide din SQL som den ser ud nu.
Avatar billede sbm Nybegynder
26. marts 2003 - 14:12 #9
Prøv også at smide din ASP som den ser ud nu
Avatar billede bajads Nybegynder
26. marts 2003 - 14:12 #10
Hvilken af mine SQL skal jeg lægge ind ??

Hvordan skriver jeg ud til skærmen ??

- Lidt dumme sprg. fra en newbee
Avatar billede ellebaek Nybegynder
26. marts 2003 - 14:14 #11
Jeg kan se på din sql at du ikke får lagID med...

<form method="post" action="Review_records.asp?LagID=<%=request.querystring("LagID")%>" ID="Form1">
                <LABEL for="t4">Headline:</LABEL>
                <INPUT id="t4" type="text" name="Overskrift" size="20"><BR>
                <LABEL for="t5">Review:</LABEL>
                <textarea cols="20" id="t5" name="Anmeldelse" rows="5"></textarea><br>
                <LABEL for="t5">Caracter:</LABEL><br>
                <LABEL for="t5">&nbsp;&nbsp;1&nbsp;&nbsp;&nbsp;2&nbsp;&nbsp;&nbsp;3 &nbsp;&nbsp;&nbsp;4 &nbsp;&nbsp;&nbsp;5</LABEL>
                <br>
                <input type="radio" name="Caracter" value="1" ID="Radio1">
                <input type="radio" name="Caracter" value="2" ID="Radio2">
                <input type="radio" name="Caracter" value="3" ID="Radio3">
                <input type="radio" name="Caracter" value="4" ID="Radio4">
                <input type="radio" name="Caracter" value="5" ID="Radio5">
                <br>
                               
                <align="right">
                <input type="reset" value=" Cancel " ID="clear" NAME="Reset1" id="clear">
                <input type="submit" value="Submit Review" size="20" ID="submit" NAME="Submit1"></align>
</form>

Prøv dette på din popup side...
Avatar billede sbm Nybegynder
26. marts 2003 - 14:15 #12
Du skal rette denne del:

connection.Execute(strSQL)
connection.Close
Set connection = Nothing


Så det ser således ud:

response.write "<br><br><br>" & strSQL & "<br><br><br>"
' connection.Execute(strSQL)
connection.Close
Set connection = Nothing
Avatar billede ellebaek Nybegynder
26. marts 2003 - 14:16 #13
sbm-> POST Data:
LagID=&Overskrift=dsfasdf&Anmeldelse=asdfasdf&Caracter=4&Submit1=Submit+Review
Avatar billede sbm Nybegynder
26. marts 2003 - 14:17 #14
Smid også din ASP kode. Har du indsat det hidden-felt jeg skrev?
Avatar billede sbm Nybegynder
26. marts 2003 - 14:18 #15
ellebaek -> Præcis! Jeg har prøvet at forklare at feltet skal med som et <input type="hidden" .... osv... og ikke som en del af hans GET-string.
Avatar billede bajads Nybegynder
26. marts 2003 - 14:19 #16
LagID kommer ikke med kun hvad jeg skriver i de 3 andre felter
Avatar billede bajads Nybegynder
26. marts 2003 - 14:20 #17
<form method="post" action="Review_records.asp?LagID=<%Response.Write strColumnID%>" ID="Form1">
            <input type="hidden" name="LagID" value="<%=strColumnID%>" ID="Hidden1">
                <LABEL for="t4">Headline:</LABEL>
                <INPUT id="t4" type="text" name="Overskrift" size="20"><BR>
                <LABEL for="t5">Review:</LABEL>
                <textarea cols="20" id="t5" name="Anmeldelse" rows="5"></textarea><br>
                <LABEL for="t5">Caracter:</LABEL><br>
                <LABEL for="t5">&nbsp;&nbsp;1&nbsp;&nbsp;&nbsp;2&nbsp;&nbsp;&nbsp;3 &nbsp;&nbsp;&nbsp;4 &nbsp;&nbsp;&nbsp;5</LABEL>
                <br>
                <input type="radio" name="Caracter" value="1" ID="Radio1">
                <input type="radio" name="Caracter" value="2" ID="Radio2">
                <input type="radio" name="Caracter" value="3" ID="Radio3">
                <input type="radio" name="Caracter" value="4" ID="Radio4">
                <input type="radio" name="Caracter" value="5" ID="Radio5">
                <br>
                               
                <align="right">
                <input type="reset" value=" Cancel " ID="clear" NAME="Reset1" id="clear">
                <input type="submit" value="Submit Review" size="20" ID="submit" NAME="Submit1"></align>
            </form>
Avatar billede sbm Nybegynder
26. marts 2003 - 14:22 #18
<form method="post" action="Review_records.asp?LagID=<%Response.Write strColumnID%>" ID="Form1">

kan du roligt lave om til

<form method="post" action="Review_records.asp" ID="Form1">
Avatar billede sbm Nybegynder
26. marts 2003 - 14:24 #19
HOV! Og du skal også huske at lave

Dim LagID
LagID = Request.QueryString ( "LagID" )

om til

Dim LagID
LagID = Request.Post ( "LagID" )
Avatar billede sbm Nybegynder
26. marts 2003 - 14:25 #20
DOH DOH DOH DOH DOHHHHHH!!!!

Jeg retter lige mig selv:

Det skulle have været

Dim LagID
LagID = Request.Form ( "LagID" )
Avatar billede mortrr Praktikant
26. marts 2003 - 14:25 #21
Det er altså ikke absolut nødvendigt at sætte LagID ind som hidden felt.
Hvis det sidder i Action (som det gør) kan man godt bruge POST og Request.QueryString("LagID")

Men prøv lige med:
Udskift:
Caracter = Request.Item ( "Caracter" )
med
Caracter = Request.Form( "Caracter" )

og

strSQL = "INSERT INTO Review ( Headline, Reviews, StarReviews, LagID ) VALUES ('" & Overskrift & "', '" & Anmeldelse & "', " & Caracter & ", " & LagID & " )"
Response.Write(strSQL)
Response.End
connection.Execute(strSQL)

Så udskriver en sql-en og stopper.
Avatar billede bajads Nybegynder
26. marts 2003 - 14:28 #22
Virker stadig ikke !!!
Avatar billede mortrr Praktikant
26. marts 2003 - 14:30 #23
Prøv nu lige med
strSQL = "INSERT INTO Review ( Headline, Reviews, StarReviews, LagID ) VALUES ('" & Overskrift & "', '" & Anmeldelse & "', " & Caracter & ", " & LagID & " )"
Response.Write(strSQL)
Response.End
connection.Execute(strSQL)

og fortæl og hvordan sql-strengen ser ud.
Avatar billede sbm Nybegynder
26. marts 2003 - 14:30 #24
Du bliver sq nødt til at give noget mere input end "virker stadig ikke".

Hvor langt er du kommet med de foreslåede rettelser?
Avatar billede sbm Nybegynder
26. marts 2003 - 14:32 #25
mortrr >> Jeg forstår ikke din rettelse? Du kan se i hans parametre længere oppe at caracter er sat korrekt, men det er LagID ikke:

LagID=&Overskrift=dsfasdf&Anmeldelse=asdfasdf&Caracter=4&Submit1=Submit+Review
Avatar billede sbm Nybegynder
26. marts 2003 - 14:33 #26
bajads >> Smid ASPen igen-igen, så det er muligt at se hvor langt du er kommet.
Avatar billede bajads Nybegynder
26. marts 2003 - 14:37 #27
Det virker nu ...

Fejlen var at vi havde sat "strColumnID" men det skulle have været "strSearchString".....eftersom dette ikke fremgik af de kode strimler jeg havde sat ind....syntes jeg i begge skal poste et svar og jeg deler pointene imellem Jer for "good effort"...
Avatar billede sbm Nybegynder
26. marts 2003 - 14:39 #28
Ok. Men 150 er nu (stadig) i overkanten....
Avatar billede mortrr Praktikant
26. marts 2003 - 14:40 #29
Ok. Du bestemmer jo selv fordelingen.
Avatar billede ellebaek Nybegynder
26. marts 2003 - 14:42 #30
Svar
Avatar billede ellebaek Nybegynder
26. marts 2003 - 14:58 #31
nå...

Jeg skulle så ikke have nogen point..!
Avatar billede sbm Nybegynder
26. marts 2003 - 20:16 #32
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester