11. september 2005 - 14:03
Der er
19 kommentarer og 1 løsning
INSERT INTO ved brug af Request.Form ?
Hvor bruger jeg request.form i min sql insert into streg? Fx INSERT INTO produkter (VareNummer) VALUES ('& Request.From("strVareNummer") &') Eller hvordan lyder den ?
Annonceindlæg fra XFlow
11. september 2005 - 14:05
#1
er strVareNummer tal i databasen eller tekst? hvis det er tekst skal der "" rundt om
11. september 2005 - 14:07
#2
strVareNummer er tal i databasen, men bliver jo indtastet i et tekst felt.. men er strengen rigtig nok ? for synes ikke jeg kan få det til at virke
11. september 2005 - 14:09
#3
INSERT INTO produkter (VareNummer) VALUES ('& Request.Form("strVareNummer") &')
11. september 2005 - 14:10
#4
Jeg rettede en stavefejl i din Request.. måske var det bare det
11. september 2005 - 14:13
#5
Koden ser sådan her ud: Set Connection = Server.Createobject("ADODB.Connection") Dsn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Inetpub\wwwroot\asp\produkter.mdb" Sql = "INSERT INTO produkter (VareNummer, VareNavn, Vaegt, Pris, LagerAntal, Land) VALUES ('& Request.Form("VareNummer") &','& Request.Form("VareNavn") &','& Request.Form("Vaegt") &','& Request.Form("Pris") &','& Request.Form("LagerAntal") &','& Request.Form("Land") &'" Connection.Open Dsn Connection.Execute(Sql) Connection.Close() Set Connection = Nothing
11. september 2005 - 14:14
#6
Får fejlen: Der opstod en Microsoft VBScript-kompileringsfejl (0x800A0401) Slut på sætning var ventet /asp/insert.asp, line 12, column 108
11. september 2005 - 14:16
#7
Sql = "INSERT INTO produkter (VareNummer, VareNavn, Vaegt, Pris, LagerAntal, Land) VALUES ('& Request.Form("VareNummer") &',"'& Request.Form("VareNavn") &'",'& Request.Form("Vaegt") &','& Request.Form("Pris") &','& Request.Form("LagerAntal") &',"'& Request.Form("Land") &'" Der skal "" rundt om alt som er tekst i databasen
11. september 2005 - 14:17
#8
Sql = "INSERT INTO produkter (VareNummer, VareNavn, Vaegt, Pris, LagerAntal, Land) VALUES ('& Request.Form("VareNummer") &','"& Request.Form("VareNavn") &"','& Request.Form("Vaegt") &','& Request.Form("Pris") &','& Request.Form("LagerAntal") &','"& Request.Form("Land") &"'" satte dem lige forkert
11. september 2005 - 14:18
#9
får den samme fejl
11. september 2005 - 14:19
#10
slut på sætning var ventet
11. september 2005 - 14:22
#11
Hvis varenummer er et tal i databasen skal der ikke apostroffer omkring varenummeret i SQL-strengen (uagtet at det er et tekstfelt du indtaster data i på din form - du har jo ikke andre muligheder). Din SQL skal derfor se således ud: Sql = "INSERT INTO produkter (VareNummer, VareNavn, Vaegt, Pris, LagerAntal, Land) VALUES (" & Request.Form("VareNummer") & ",'" & Request.Form("VareNavn") & "'," & Request.Form("Vaegt") & "," & Request.Form("Pris") & "," & Request.Form("LagerAntal") & ",'" & Request.Form("Land") & "')" Jeg har taget kalp's kode og rettet lidt på rækkefølgen af apostroffer og anførselstegn rundt om i SQL-strengen, men ellers tror jeg kalp har ret i sin version.
11. september 2005 - 14:25
#12
Så langt så godt, men nu skriver den at der er en syntaks fejl :(
11. september 2005 - 14:28
#13
Hvordan ser din kode ud og hvilken linie får du den fejl?
11. september 2005 - 14:31
#14
<% Dim Connection, Dsn, Sql Set Connection = Server.Createobject("ADODB.Connection") Dsn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Inetpub\wwwroot\asp\produkter.mdb" Sql = "INSERT INTO produkter (VareNummer, VareNavn, Vaegt, Pris, LagerAntal, Land) VALUES (" & Request.Form("VareNummer") & ",'" & Request.Form("VareNavn") & "'," & Request.Form("Vaegt") & "," & Request.Form("Pris") & "," & Request.Form("LagerAntal") & ",'" & Request.Form("Land") & "')" Connection.Open Dsn Connection.Execute(Sql) <--- den her linje der får fejlen Connection.Close() Set Connection = Nothing %>
11. september 2005 - 14:31
#15
Fejltype: Microsoft JET Database Engine (0x80040E14) Der er en syntaksfejl i INSERT INTO-sætningen. /asp/insert.asp, line 14
11. september 2005 - 14:38
#16
Som nielle ville have sagt: "Prøv at skrive SQL-sætnignen ud, så er det meget nemmere at se hvad der gør galt..." - og det vil jeg hermed foreslå :)
11. september 2005 - 15:12
#17
Det er sikkert en eller anden talværdi som ikke er udfyldt. Det skal du checke på inden du begynder at indsætte det i databasen, for databasen accepterer ikke tomme værdier i talfelter (med mindre de i databasen er sat til at acceptere NULL-værdier).
11. september 2005 - 16:23
#18
Når jeg fx prøver bare det her af: Sql = "INSERT INTO produkter (VareNavn) VALUES (' & Request.Form("VareNavn") & ')" Så indsætter den under varenavn: & Request.Form("VareNavn") & og ikke den værdi, der kommer fra form feltet VareNavn
11. september 2005 - 16:44
#19
Lukker spm
11. september 2005 - 18:35
#20
Hvad fandt du så ud af (nu da du lukker så pludseligt)?
Kurser inden for grundlæggende programmering