Avatar billede BTEngineer Novice
04. september 2005 - 17:40 Der er 6 kommentarer og
1 løsning

Problem med insert SQL syntax

Hej.

Jeg har et problem med en insert.

Jeg for følgende fejl:

You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'by, tlfnr, email, hjemmeside, systemet, type) VALUES ('test',

Jeg forstår ikke hvad fejlen er.

Her er min kode:

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Bestil</title>

</head>

<body>

<h1>Bestil</h1>
<form action="index.php?bestil=ja" method="POST">
<b>Fuldenavn:<br>
<input type="text" name="fuldenavn" size="35"><br>
Adresse:<br>
<input type="text" name="gade" size="35"> <br>
Post nr:<br>
<input type="text" name="postnr" size="4" maxlength="4"><br>
By:<br>
<input type="text" name="by" size="35"><br>
Telefon nr:<br>
<input type="text" name="tlfnr" size="35" maxlength="8"><br>
E-Mail:<br>
<input type="text" name="email" size="35"><br>
Hjemmeside:<br>
<input type="text" name="hjemmeside" size="35" maxlength="8"><br>
Systemer:</b><br>
<input type="checkbox" name="type" value="guestbook">Gæstebog ,-25 DKK<br>
<input type="checkbox" name="type" value="mailform">Mailform ,-15 DKK<br>
<input type="checkbox" name="type" value="nyhedssystem">Nyheds system ,-55 DKK<br>
<input type="checkbox" name="type" value="artikelsystem">Artikel system ,-55 DKK<br>
<input type="checkbox" name="type" value="adminsystem">Admin system ,-35 DKK<br>
<br>
<b>Beskrivelse af systemet:</b><br>
<textarea rows="7" name="systemet" cols="26"></textarea>
<br>
<br>
<input type="submit" value="Bestil">
</form>

<?
if($_GET[bestil] == "ja") {

// 1
if($_POST[fuldenavn] == "") {
echo("Alle felter er ikke udfyldt korrekt!");
} else {

// 2
if($_POST[gade] == "") {
echo("Alle felter er ikke udfyldt korrekt!");
} else {

// 3
if($_POST[by] == "") {
echo("Alle felter er ikke udfyldt korrekt!");
} else {

// 4
if($_POST[tlfnr] == "") {
echo("Alle felter er ikke udfyldt korrekt!");
} else {

// 5
if($_POST[email] == "") {
echo("Alle felter er ikke udfyldt korrekt!");
} else {

// 6
if($_POST[hjemmeside] == "") {
echo("Alle felter er ikke udfyldt korrekt!");
} else {

// 7
if($_POST[systemet] == "") {
echo("Alle felter er ikke udfyldt korrekt!");
} else {

$fuldenavn = htmlspecialchars($_POST[fuldenavn]);
$gade = htmlspecialchars($_POST[gade]);
$by = htmlspecialchars($_POST[by]);
$tlfnr = htmlspecialchars($_POST[tlfnr]);
$email = htmlspecialchars($_POST[email]);
$hjemmeside = htmlspecialchars($_POST[hjemmeside]);
$systemet = htmlspecialchars($_POST[systemet]);
$type = $_POST[type];


include("mysql/mysql.php");
mysql_query("INSERT INTO bestil (fuldenavn, gade, by, tlfnr, email, hjemmeside, systemet, type) VALUES ('$fuldenavn', '$gade', '$by', '$tlfnr', '$email', '$hjemmeside', '$systemet', '$type')") or die(mysql_error());
echo("Tak for din bestilling!<br><br>Du vil inden for 24 timer modtage en mail angående din bestilling.");
} // 1
} // 2
} // 3
} // 4
} // 5
} // 6
} // 7
} // 8
?>

</body>

</html>

Håber nogen kan hjælpe.
Avatar billede thesurfer Nybegynder
04. september 2005 - 17:42 #1
"by" er et reserveret ord.. derfor: [by] eller `by`

Kan ikke huske hvad det er for en .. :-)

/theSurfer
Avatar billede 1nz4n3 Nybegynder
04. september 2005 - 17:43 #2
By er et ord som bruges af MySQL. så lav istedet:

mysql_query("INSERT INTO bestil (fuldenavn, gade, `by`, tlfnr, email, hjemmeside, systemet, type) VALUES ('$fuldenavn', '$gade', '$by', '$tlfnr', '$email', '$hjemmeside', '$systemet', '$type')") or die(mysql_error());
Avatar billede thesurfer Nybegynder
04. september 2005 - 17:43 #3
1nz4n3> Too slow :-)

/theSurfer
Avatar billede BTEngineer Novice
04. september 2005 - 17:45 #4
Det virker nu :-).

Tusinde tak.

Smid et svar thesurfer :-).
Avatar billede thesurfer Nybegynder
04. september 2005 - 17:46 #5
Avatar billede thesurfer Nybegynder
04. september 2005 - 17:46 #6
Svar smidt :-)

/theSurfer
Avatar billede thesurfer Nybegynder
04. september 2005 - 17:47 #7
Takker for points :-)

/theSurfer
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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