Syntax error
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
if(isset($_POST['knop'], $_POST['naam'], $_POST['omschrijving'], $_POST
['prijs'])){
$sql = "INSERT INTO artikel (Naam, Toegevoegd, Omschrijving, Prijs) VALUES
('".$_POST["naam"]."', NOW()) ".$_POST["omschrijving"]."', ".$_POST["prijs"].")";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen artikel mislukt!" . mysql_error();
exit;
} else {
$artikelid = mysql_insert_id(); // primaire sleutel van zojuist toegevoegde rij
$sql = "INSERT INTO categorie_per_artikel (Artikel_id, Categorie_id) VALUES
('".$artikelid."','".$_POST["categorieid"]."')";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen categorie mislukt!" . mysql_error();
exit;
?>
if(isset($_POST['knop'], $_POST['naam'], $_POST['omschrijving'], $_POST
['prijs'])){
$sql = "INSERT INTO artikel (Naam, Toegevoegd, Omschrijving, Prijs) VALUES
('".$_POST["naam"]."', NOW()) ".$_POST["omschrijving"]."', ".$_POST["prijs"].")";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen artikel mislukt!" . mysql_error();
exit;
} else {
$artikelid = mysql_insert_id(); // primaire sleutel van zojuist toegevoegde rij
$sql = "INSERT INTO categorie_per_artikel (Artikel_id, Categorie_id) VALUES
('".$artikelid."','".$_POST["categorieid"]."')";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen categorie mislukt!" . mysql_error();
exit;
?>
Gewijzigd op 01/01/1970 01:00:00 door Lars Koning
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
<?php
if(isset($_POST['knop'], $_POST['naam'], $_POST['omschrijving'], $_POST
['prijs'])){
$sql = "INSERT INTO artikel (Naam, Toegevoegd, Omschrijving, Prijs) VALUES
('".$_POST["naam"]."', NOW(), ".$_POST["omschrijving"]."', ".$_POST["prijs"].")";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen artikel mislukt!" . mysql_error().PHP_EOL.'Query: '.$sql;
exit;
}..
?>
if(isset($_POST['knop'], $_POST['naam'], $_POST['omschrijving'], $_POST
['prijs'])){
$sql = "INSERT INTO artikel (Naam, Toegevoegd, Omschrijving, Prijs) VALUES
('".$_POST["naam"]."', NOW(), ".$_POST["omschrijving"]."', ".$_POST["prijs"].")";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen artikel mislukt!" . mysql_error().PHP_EOL.'Query: '.$sql;
exit;
}..
?>
Je had now()) staan i.p.v. now(),
Gewijzigd op 01/01/1970 01:00:00 door TJVB tvb
heb nu dit:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
if(isset($_POST['knop'], $_POST['naam'], $_POST['omschrijving'], $_POST
['prijs'])){
$sql = "INSERT INTO artikel (Naam, Omschrijving, Prijs, Toegevoegd) VALUES
('".$_POST["naam"]."', NOW(), ".$_POST["omschrijving"]."', ".$_POST["prijs"].")";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen artikel mislukt!" . mysql_error().PHP_EOL.'Query: '.$sql;
exit;
} else {
$artikelid = mysql_insert_id(); // primaire sleutel van zojuist toegevoegde rij
$sql = "INSERT INTO categorie_per_artikel (Artikel_id, Categorie_id) VALUES
('".$artikelid."','".$_POST["categorieid"]."')";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen categorie mislukt!" . mysql_error();
exit;
}
}
echo "OK, uw advertentie ".$_POST["naam"]." is toegevoegd.";
} else {
?>
if(isset($_POST['knop'], $_POST['naam'], $_POST['omschrijving'], $_POST
['prijs'])){
$sql = "INSERT INTO artikel (Naam, Omschrijving, Prijs, Toegevoegd) VALUES
('".$_POST["naam"]."', NOW(), ".$_POST["omschrijving"]."', ".$_POST["prijs"].")";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen artikel mislukt!" . mysql_error().PHP_EOL.'Query: '.$sql;
exit;
} else {
$artikelid = mysql_insert_id(); // primaire sleutel van zojuist toegevoegde rij
$sql = "INSERT INTO categorie_per_artikel (Artikel_id, Categorie_id) VALUES
('".$artikelid."','".$_POST["categorieid"]."')";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen categorie mislukt!" . mysql_error();
exit;
}
}
echo "OK, uw advertentie ".$_POST["naam"]." is toegevoegd.";
} else {
?>
<form method="post" action="">
Selecteer een categorie: <select name="categorieid">
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
<?php
$sql = "SELECT * FROM categorie";
$resultaat = mysql_query($sql) or trigger_error(mysql_error()); // voer SQL
code uit
while ($rij = mysql_fetch_array($resultaat)) {
echo "<option value=\"";
echo $rij["Categorie_id"]."\">";
echo $rij["Naam"]."</option>\n";
}
?>
$sql = "SELECT * FROM categorie";
$resultaat = mysql_query($sql) or trigger_error(mysql_error()); // voer SQL
code uit
while ($rij = mysql_fetch_array($resultaat)) {
echo "<option value=\"";
echo $rij["Categorie_id"]."\">";
echo $rij["Naam"]."</option>\n";
}
?>
VALUES ('rieki', NOW(), jos', 31618
(zelf goed lezen is wel belabgrijk hoor !)
Ik zie het nier Ruud sorry ben hier al 2 dagen mee bezig???
Queries noteer je netjes uitgeschreven over meerdere regels:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php
if(isset($_POST['knop'], $_POST['naam'], $_POST['omschrijving'], $_POST['prijs'])){
$sql = "
INSERT INTO
artikel (
Naam,
Omschrijving,
Prijs,
Toegevoegd
)
VALUES(
'".$_POST["naam"]."',
NOW(),
".$_POST["omschrijving"]."',
".$_POST["prijs"]."
)";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen artikel mislukt!" . mysql_error().PHP_EOL.'Query: '.$sql;
exit;
} else {
$artikelid = mysql_insert_id(); // primaire sleutel van zojuist toegevoegde rij => geen PK, maar auto_increment
$sql = "
INSERT INTO
categorie_per_artikel (
Artikel_id,
Categorie_id
)
VALUES(
'".$artikelid."',
'".$_POST["categorieid"]."'
)";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen categorie mislukt!" . mysql_error();
exit;
}
}
echo "OK, uw advertentie ".$_POST["naam"]." is toegevoegd.";
} else {
?>
if(isset($_POST['knop'], $_POST['naam'], $_POST['omschrijving'], $_POST['prijs'])){
$sql = "
INSERT INTO
artikel (
Naam,
Omschrijving,
Prijs,
Toegevoegd
)
VALUES(
'".$_POST["naam"]."',
NOW(),
".$_POST["omschrijving"]."',
".$_POST["prijs"]."
)";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen artikel mislukt!" . mysql_error().PHP_EOL.'Query: '.$sql;
exit;
} else {
$artikelid = mysql_insert_id(); // primaire sleutel van zojuist toegevoegde rij => geen PK, maar auto_increment
$sql = "
INSERT INTO
categorie_per_artikel (
Artikel_id,
Categorie_id
)
VALUES(
'".$artikelid."',
'".$_POST["categorieid"]."'
)";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen categorie mislukt!" . mysql_error();
exit;
}
}
echo "OK, uw advertentie ".$_POST["naam"]." is toegevoegd.";
} else {
?>
Verder raad ik je aan om iets meer aan foutafhandeling te doen, de POST-waardes staan zonder beveiliging in jouw queries en je noteert nergens de query die is mislukt.
Het is trouwens een opzetjes die in aanmerking komt voor een TRANSACTION, wanneer de 2e query mislukt, wil je de eerste ook ongedaan maken. Doe je dat niet, dan help je jouw database naar de bliksem.
Ps. Ik heb inhoudelijk niks aan de code veranderd, de bug mag je zelf oplossen.
is niet symetrisch :)
de quote voor jos is er niet,
dus :
, '".$_POST["omschrijving"]."',
1 fout opgelost ..... ,
en ...?
Hij zegt niet eens dank je !
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php
if(isset($_POST['knop'], $_POST['naam'], $_POST['omschrijving'], $_POST
['prijs'])){
$sql = "
INSERT INTO
artikel (
Naam,
Omschrijving,
Prijs,
Toegevoegd
)
VALUES(
, '".$_POST["naam"]."',
NOW(),
, '".$_POST["omschrijving"]."',
, '".$_POST["prijs"]."',
)";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen artikel mislukt!" . mysql_error().PHP_EOL.'Query: '.$sql;
exit;
} else {
$artikelid = mysql_insert_id(); // primaire sleutel van zojuist
toegevoegde rij => geen PK, maar auto_increment
$sql = "
INSERT INTO
categorie_per_artikel (
Artikel_id,
Categorie_id
)
VALUES(
'".$artikelid."',
'".$_POST["categorieid"]."'
)";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen categorie mislukt!" . mysql_error();
exit;
}
}
echo "OK, uw advertentie ".$_POST["naam"]." is toegevoegd.";
} else {
?>
if(isset($_POST['knop'], $_POST['naam'], $_POST['omschrijving'], $_POST
['prijs'])){
$sql = "
INSERT INTO
artikel (
Naam,
Omschrijving,
Prijs,
Toegevoegd
)
VALUES(
, '".$_POST["naam"]."',
NOW(),
, '".$_POST["omschrijving"]."',
, '".$_POST["prijs"]."',
)";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen artikel mislukt!" . mysql_error().PHP_EOL.'Query: '.$sql;
exit;
} else {
$artikelid = mysql_insert_id(); // primaire sleutel van zojuist
toegevoegde rij => geen PK, maar auto_increment
$sql = "
INSERT INTO
categorie_per_artikel (
Artikel_id,
Categorie_id
)
VALUES(
'".$artikelid."',
'".$_POST["categorieid"]."'
)";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen categorie mislukt!" . mysql_error();
exit;
}
}
echo "OK, uw advertentie ".$_POST["naam"]." is toegevoegd.";
} else {
?>
Gewijzigd op 01/01/1970 01:00:00 door Lars Koning
En het is niet de enige fout, er staat nog een serie overbodige komma's. Komma's zet je aan het einde van de regel, nooit aan het begin.
Edit: En al helemaal niet zowel aan het begin als het einde van een regel...
Gewijzigd op 01/01/1970 01:00:00 door Frank -
OM gek van te worden!
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
<?php
ini_set ('display errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);
// Rest van het script
if(isset($_POST['knop'], $_POST['naam'], $_POST['omschrijving'], $_POST['prijs'])){
$sql = "
INSERT INTO
artikel (
Naam,
Omschrijving,
Prijs,
Toegevoegd
)
VALUES(
'".$_POST["naam"]."',
NOW(),
'".$_POST["omschrijving"]."',
'".$_POST["prijs"]."'
)";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen artikel mislukt!" . mysql_error().PHP_EOL.'Query: '.$sql;
exit;
} else {
$artikelid = mysql_insert_id(); // primaire sleutel van zojuist toegevoegde rij => geen PK, maar auto_increment
$sql = "
INSERT INTO
categorie_per_artikel (
Artikel_id,
Categorie_id
)
VALUES(
'".$artikelid."',
'".$_POST["categorieid"]."'
)";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen categorie mislukt!" . mysql_error();
exit;
}
}
echo "OK, uw advertentie ".$_POST["naam"]." is toegevoegd.";
} else {
<form method="post" action="<?php echo $_SERVER["PHP_SELF"];
Selecteer een categorie: <select name="categorieid">
$sql = "SELECT * FROM categorie";
$resultaat = mysql_query($sql) or trigger_error(mysql_error()); // voer SQL code uit
while ($rij = mysql_fetch_array($resultaat)) {
echo "<option value=\"";
echo $rij["Categorie_id"]."\">";
echo $rij["Naam"]."</option>\n";
}
require "footer.php";
?>
ini_set ('display errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);
// Rest van het script
if(isset($_POST['knop'], $_POST['naam'], $_POST['omschrijving'], $_POST['prijs'])){
$sql = "
INSERT INTO
artikel (
Naam,
Omschrijving,
Prijs,
Toegevoegd
)
VALUES(
'".$_POST["naam"]."',
NOW(),
'".$_POST["omschrijving"]."',
'".$_POST["prijs"]."'
)";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen artikel mislukt!" . mysql_error().PHP_EOL.'Query: '.$sql;
exit;
} else {
$artikelid = mysql_insert_id(); // primaire sleutel van zojuist toegevoegde rij => geen PK, maar auto_increment
$sql = "
INSERT INTO
categorie_per_artikel (
Artikel_id,
Categorie_id
)
VALUES(
'".$artikelid."',
'".$_POST["categorieid"]."'
)";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen categorie mislukt!" . mysql_error();
exit;
}
}
echo "OK, uw advertentie ".$_POST["naam"]." is toegevoegd.";
} else {
<form method="post" action="<?php echo $_SERVER["PHP_SELF"];
Selecteer een categorie: <select name="categorieid">
$sql = "SELECT * FROM categorie";
$resultaat = mysql_query($sql) or trigger_error(mysql_error()); // voer SQL code uit
while ($rij = mysql_fetch_array($resultaat)) {
echo "<option value=\"";
echo $rij["Categorie_id"]."\">";
echo $rij["Naam"]."</option>\n";
}
require "footer.php";
?>
Gewijzigd op 01/01/1970 01:00:00 door Lars Koning
Kortom, hoe ziet jouw database eruit?
Ps. Echo de query eens en voer deze met het handje uit in PhpMyAdmin. Wat is daar het resultaat van?
Naam varchar(40)
Omschrijving longtext
Prijs double
Toegevoegd datetime
En wanneer je de query met het handje uitvoert, wat gebeurt er dan met de functie NOW() ? Zet die keurig een datumtijdstempel in de database?
#1064 - 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 '"' at line 25
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
<?php
ini_set ('display errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);
// Rest van het script
if(isset($_POST['knop'], $_POST['naam'], $_POST['omschrijving'], $_POST['prijs'])){
$sql = "
INSERT INTO
artikel (
Naam,
Omschrijving,
Prijs,
Toegevoegd
)
VALUES(
'".$_POST["naam"]."',
'".$_POST["omschrijving"]."',
'".$_POST["prijs"]."',
NOW()
)";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen artikel mislukt!" . mysql_error().PHP_EOL.'Query: '.$sql;
exit;
} else {
$artikelid = mysql_insert_id(); // primaire sleutel van zojuist toegevoegde rij => geen PK, maar auto_increment
$sql = "
INSERT INTO
categorie_per_artikel (
Artikel_id,
Categorie_id
)
VALUES(
'".$artikelid."',
'".$_POST["categorieid"]."'
)";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen categorie mislukt!" . mysql_error();
exit;
}
}
echo "OK, uw advertentie ".$_POST["naam"]." is toegevoegd.";
} else {
<form method="post" action="<?php echo $_SERVER["PHP_SELF"];
Selecteer een categorie: <select name="categorieid">
$sql = "SELECT * FROM categorie";
$resultaat = mysql_query($sql) or trigger_error(mysql_error()); // voer SQL code uit
while ($rij = mysql_fetch_array($resultaat)) {
echo "<option value=
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /var/www/vhosts/phphulp.nl/httpdocs/cfgs/ubbparser/bbcode.class.php on line 472
"";
echo $rij["Categorie_id"]."\">";
echo $rij["Naam"]."</option>\n";
}
require "footer.php";
?>
Daarnaast is het n grote onoverzichtelijke retescheet. Haal al die enters weg, spring op de juiste manier in.
ini_set ('display errors', 1); // 0 = uit, 1 = aan
error_reporting(E_ALL);
// Rest van het script
if(isset($_POST['knop'], $_POST['naam'], $_POST['omschrijving'], $_POST['prijs'])){
$sql = "
INSERT INTO
artikel (
Naam,
Omschrijving,
Prijs,
Toegevoegd
)
VALUES(
'".$_POST["naam"]."',
'".$_POST["omschrijving"]."',
'".$_POST["prijs"]."',
NOW()
)";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen artikel mislukt!" . mysql_error().PHP_EOL.'Query: '.$sql;
exit;
} else {
$artikelid = mysql_insert_id(); // primaire sleutel van zojuist toegevoegde rij => geen PK, maar auto_increment
$sql = "
INSERT INTO
categorie_per_artikel (
Artikel_id,
Categorie_id
)
VALUES(
'".$artikelid."',
'".$_POST["categorieid"]."'
)";
if (!mysql_query($sql)) { // voer SQL code uit
echo "Toevoegen categorie mislukt!" . mysql_error();
exit;
}
}
echo "OK, uw advertentie ".$_POST["naam"]." is toegevoegd.";
} else {
<form method="post" action="<?php echo $_SERVER["PHP_SELF"];
Selecteer een categorie: <select name="categorieid">
$sql = "SELECT * FROM categorie";
$resultaat = mysql_query($sql) or trigger_error(mysql_error()); // voer SQL code uit
while ($rij = mysql_fetch_array($resultaat)) {
echo "<option value=
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /var/www/vhosts/phphulp.nl/httpdocs/cfgs/ubbparser/bbcode.class.php on line 472
"";
echo $rij["Categorie_id"]."\">";
echo $rij["Naam"]."</option>\n";
}
require "footer.php";
?>
Daarnaast is het n grote onoverzichtelijke retescheet. Haal al die enters weg, spring op de juiste manier in.
guido schreef op 24.11.2007 19:35:
En heb je al uitgezocht wat die 1064 betekent?#1064 - 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 '"' at line 25
De handleiding hebben ze niet voor niets geschreven...
Waarschijnlijk komt dit omdat de MySQL-server een aantal statements niet ondersteunt
Beetje moeite doen kan geen kwaad...
want die statements die dan niet zouden kunnen werken
zijn:DROP TABLE IF EXISTS en CREATE TABLE-statements.
Maar die gebruik ik nIET
En nog iets dat eerdere script POST e wel de datetime alleen de naam dubbel
Gewijzigd op 01/01/1970 01:00:00 door Lars Koning