18. november 2002 - 10:44
Der er
8 kommentarer og 1 løsning
INSERT INTO, fra en Dropdown box virker ikke!
Hej med jer. Jeg skal ha smidt alm. text ind i min Access DB, fra nogle text input felter samt en Dropdown box, men det virker bare ikke. Code: Set objRS = Server.CreateObject("ADODB.Recordset") strSQL = "INSERT INTO Brugere (Navn,Firma,Brugernavn,Password,BrugerType) " strSQL = strSQL & "VALUES ('"& Navn &"','"& Firma &"','"& Brugernavn &"','"& Password &"','"& BrugerType &"')" Set objRS = objCnx.Execute(strSQL) Når jeg udskriver strSQL ser det således ud: INSERT INTO Brugere (Navn,Firma,Brugernavn,Password,BrugerType) VALUES ('t','t','t','t','Bruger') Mvh ecoder :-(
Annonceindlæg fra gavdi
18. november 2002 - 10:46
#1
Det er forresten BrugerType der er min DropDownbox: Den ser således ud: <select name="BrugerType"> <option value="Bruger">Bruger</option> <option value="Ekstern">Ekstern</option> <option value="Intern">Intern</option> </select>
Slettet bruger
18. november 2002 - 10:46
#2
Hvordan ser resten af scriptet ud? Altså der hvor Navn, Firma osv bliver tildelt værdier fra din form?
18. november 2002 - 10:47
#3
Hvad er fejlen? Og så returneres der ikke et recordset ved insert, update eller delete. Så koden bør skrives som: strSQL = "INSERT INTO Brugere (Navn,Firma,Brugernavn,Password,BrugerType) " strSQL = strSQL & "VALUES ('"& Navn &"','"& Firma &"','"& Brugernavn &"','"& Password &"','"& BrugerType &"')" objCnx.Execute strSQL
18. november 2002 - 10:48
#4
Sådan her: Dim Navn, Firma, Brugernavn, Password, BrugerType Navn = Replace(Request.Form("Navn"),"'","") Firma = Replace(Request.Form("Firma"),"'","") Brugernavn = Replace(Request.Form("Brugernavn"),"'","") Password = Replace(Request.Form("Password"),"'","") BrugerType = Replace(Request.Form("BrugerType"),"'","")
18. november 2002 - 10:52
#5
Hele koden hvis det er til nogen hjælp: <!--#include file="var.asp"--> <!--#include file="cnx.asp"--> <% 'If Request.Form("Submit") <> "" Then If action = ("new") Then Dim Navn, Firma, Brugernavn, Password, BrugerType Navn = Replace(Request.Form("Navn"),"'","") Firma = Replace(Request.Form("Firma"),"'","") Brugernavn = Replace(Request.Form("Brugernavn"),"'","") Password = Replace(Request.Form("Password"),"'","") BrugerType = Replace(Request.Form("BrugerType"),"'","") Dim errorfound, strError strError = "" errorfound = 0 If Navn = "" Then errorfound = 1 strError = "Indtast et navn!<br />" End If If Firma = "" Then errorfound = 1 strError = "Indtast et Firma!<br />" End If If Brugernavn = "" Then errorfound = 1 strError = "Indtast et Brugernavn!<br />" End If If Password = "" Then errorfound = 1 strError = "Indtast et Password!<br />" End If If BrugerType = "" Then errorfound = 1 strError = "Vælg Type bruger!<br />" End If If errorfound = 0 Then Set objRS = Server.CreateObject("ADODB.Recordset") strSQL = "INSERT INTO Brugere (Navn,Firma,Brugernavn,Password,BrugerType) " strSQL = strSQL & "VALUES ('"& Navn &"','"& Firma &"','"& Brugernavn &"','"& Password &"','"& BrugerType &"')" 'Response.Write strSQL 'Response.End Set objRS = objCnx.Execute(strSQL) Call Close End If End If Sub Close objRS.Close objCnx.Close Set objRS = Nothing Set objCnx = Nothing End Sub If page = ("opret") Then %> <tr> <td align="center" valign="top"> <table cellpadding="10" cellspacing="0" border="0"> <form action="default.asp?page=opret&action=new" method="post"> <tr> <td>Navn:</td> <td><input type="Text" name="Navn" /></td> </tr> <tr> <td>Firma:</td> <td><input type="Text" name="Firma" /></td> </tr> <tr> <td>Brugernavn:</td> <td><input type="Text" name="Brugernavn" /></td> </tr> <tr> <td>Password:</td> <td><input type="Text" name="Password" /></td> </tr> <tr> <td colspan="2"> <table align="center" width="230" cellpadding="0" cellspacing="0" border="0"> <tr> <td>Vælg bruger retigheder<br><br></td> </tr> <tr> <td> <select name="BrugerType"> <option value="Bruger">Bruger</option> <option value="Ekstern">Ekstern</option> <option value="Intern">Intern</option> </select> </td> </tr> </table> </td> </tr> <tr> <td colspan="2" align="right"><input style="width:80px;" type="Submit" value="Tilføj" /></td> </tr> </form> <tr> <td colspan="2"> <% If strError <> "" Then Response.Write "<table cellpadding=""0"" cellspacing=""0"" border=""0"">" &_ " <tr>" &_ " <td>" &_ " <font color='red'><b>" & strError & "<b></font>" &_ " </td>" &_ " </tr>" &_ "</table>" End If %> </td> </tr> </table> </td> </tr> <% End If %>
18. november 2002 - 10:53
#6
Den SQL som bliver udskrevet ser da også rigtig nok ud. Så hvilken fejl opstår der?
18. november 2002 - 10:54
#7
Og fejl meddelelsen er: Microsoft JET Database Engine fejl '80040e14' Der er en syntaksfejl i INSERT INTO-sætningen. /dktele_test/ssi/opret_brugere.asp, line 52
18. november 2002 - 22:42
#8
Prøv på den måde: strSQL = "INSERT INTO Brugere (Navn,Firma,Brugernavn,Password,BrugerType) VALUES ('" _ & Navn &"','"& Firma &"','"& Brugernavn &"','" _ & Password &"')" Kalder du din tabel Brugere og stave´t rigtig?
15. januar 2003 - 23:16
#9
Undskyld jeg har glemt at give points......... De kommer her kichian! :-( Mvh Lucien
Kurser inden for grundlæggende programmering