Nu skriver du ikke, hvilken fejlmeddelelse du får, men prøv denne SQL = \"DELETE FROM mailingliste where id =\'\"& request(\"id\") & \"\'\" Det er også muligt at dit id ikke eksisterer. Endelig er det muligt at din database kræver * efter Delete.
Tak for responsen, men delete funktionen virker fint nok. Det er update funktionen der ikke virker. Hvis jeg skriver: SQL = \"UPDATE mailingliste SET info= \'OK\' WHERE id =\"& request(\"id\") conn.execute (SQL) så virker det. Der står nu OK i det felt der hedder info.
Men hvis jeg requester det som står i info feltet og sender det til access for at opdatere sker der ikke noget eller jeg får en \"expected end of..\" fejl. Jeg har også prøvet at requested data fra et andet felt end info fx. navn feltet og sende det, men jeg tror at det er min sammen sætning af string og variabel. det er denne linie der ikke virker: SQL = \"UPDATE mailingliste SET info=\"&request(\"info\")&\"WHERE id =\"& request(\"id\")
Jo det har jeg også prøvet. Her får jeg ikke nogen fejl, men der sker bare ikke noget. Hvis jeg laver en SQL = \"UPDATE mailingliste SET info=\'\"&request(\"navn\")&\"\' WHERE id =\"& request(\"id\") response.write SQL så kan jeg se hvad SQL sætningen bliver til og her får jeg: UPDATE mailingliste SET info=\'\' WHERE id =32
Den er simpelthen tom.
en sætning som denne et andet sted i scriptet virker fint
til spørgsmål 1: Hvad med at skrive request.form eller request.querystring Jeg går udfra at request.form for allle felter? Ville syntaksen så blive: SQL = \"UPDATE mailingliste\" & request.form & \" WHERE id =\"& request(\"id\") Det vil jeg lige prøve. Men det er lidt spild at sende al data afsted bare for at opdatere et felt.
Til spørgsmål 2:Husker du pinger(=\') rundt om dine variabler ?? Jeg har dene syntaks: SQL = \"UPDATE mailingliste SET info=\'\"&request(\"navn\")&\"\' WHERE id =\"& request(\"id\") Min response.write viser også de 2 pinger men der er bare ikke noget i dem.
Endnu engang tak for kampen. Kan det være noget andet i koden som er galt? Hvis nogen er interesseret kan jeg sende koden så I kan kigge den igennem.
Jeg tror ikke at man kan bruge æøå i variabler. Hvis jeg laver den om til lap = request(\"navn\") SQL = \"UPDATE mailingliste SET info=\'\"&lap&\"\' WHERE id =\"& request(\"id\") response.write SQL
får jeg satdig en tom streng der og ja jeg har indtastet noget i feltet navn :-) UPDATE mailingliste SET info=\'\' WHERE id =32
jeg har også prøvet response.write lap og der kan jeg se at lap er tom. Som sagt så er der et andet sted i scriptet hvor request(\"navn\") fungerer ok. Jeg ved ikke hvor jeg skal lede <sigh>
OK Here goes. Bemærk at jeg laver en test med reponse.write hvor jeg sætter prut = request(\"id\") og prøver at vise både den og lap. Jeg får kun prut\'s værdi. -- SCRIPTET --
<HTML> <HEAD> <TITLE>Mailingliste</TITLE> </HEAD> <BODY BGCOLOR=\"#FFFFFF\" TEXT=\"#000000\"> <% \' den er void i starten if request(\"mode\") = \"1\" then
SQL = \"INSERT INTO mailingliste ( navn, adr, post, Bynavn, telf, telf2, email, info ) values (\'\" & request(\"navn\") & \"\',\'\" & request(\"Adr\") & \"\',\'\" & request(\"post\") & \"\',\'\" & request(\"Bynavn\") & \"\',\'\" & request(\"telf\") & \"\',\'\" & request(\"telf2\") & \"\',\'\" & request(\"email\") & \"\',\'\" & request(\"info\") & \"\')\" conn.execute (SQL) response.write \"<BR><FONT FACE=\'Arial\' SIZE=\'6\' COLOR=\'#000000\'><STRONG><CENTER>I er nu blevet tilmeldt adresselisten. Velkommen til</CENTER></STRONG></FONT>\" %> <h4 align=\"center\"><a href=\"mailingliste.asp\" target=\"\">Tilbage til adresselisten</a> <% else if session(\"login\") = \"ok\" then
Jeg er ret sikker på at det hænger sådan sammen at SQL bruger \' til at indhegne strenge. \" bruges til at vise IIS´en at her slutter / begynder strengen.
Bliver det smidt i DB´en hvis Lap = \"hildur\" ???
Ja og det rigtige sted. Det gjorde den nu også før da jeg bare skrev OK direlte i syntaksen. Det hele kogt ned. Requesten får ikke fat i feltets data. Kan det have noget feltet at gøre? Nej forresten et andet sted virker det OK. Damn...
Ingen af dem gav noget resultat. Jeg sætter: <form action=\"mailingliste.asp\" method=\"POST\"> nede i det table hvor man indskriver sine data. Se evt. i hele koden længere oppe. Kan det have noget at gøre med at IF/THEN er før table? Nej vel, det ville være tåbeligt. Jeg må ud at læse om reguest funktionen.
1. Du navngiver et af dine tekstfelter post. Jeg ved ikke om det kunne gøre noget. ***Du har ret her. Det har jeg været udefor før med en der hed by. Jeg tror ikke at den har indflydelse på dette problem, men den skal rettes, tak 2. Ellers prøv at hente værdien ind i en variabel i toppen af scriptet. ** Det vil jeg prøve. Godt forslag. 3. hov navn = request.form(\"navn\") Hvad mener du, at ASP bliver forvirret over variablen navn og string navn eller?
Til alle der har hjulpet, tak. Problemet er endnu ikke løst og jeg har ikke arbejdet med det på det sidste. Jeg forstår ikke hvorfor request.form(\"navn\") ikke giver noget. Jeg ville bare lige melde tilbage at jeg ikke har glemt Jer. Jeg arbejder nok videre engang i næste uge.
På et tidspunkt kunne jeg ikke bruge post pga noget rettighedsbøvl. Hvis jeg havde været inde på en side med rettigheder på ville browseren ikke acceptere at post\'e.
Det var en IIS 4.0
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.