Unknown column '$voetballer' in 'where clause'
Gewijzigd op 01/01/1970 01:00:00 door Kevin de Jong
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
<?
$voetballer=$_POST[voetballer];
$goal=$_POST[goal];
mysql_query("UPDATE `Leden` SET `goals` =`goals`+'". $goal ."' WHERE Naam = '". $voetballer ."');
echo "Goals bijgewerkt!";
?>
$voetballer=$_POST[voetballer];
$goal=$_POST[goal];
mysql_query("UPDATE `Leden` SET `goals` =`goals`+'". $goal ."' WHERE Naam = '". $voetballer ."');
echo "Goals bijgewerkt!";
?>
Je <option>'s hebben geen value.
Dit is geen php:
UPDATE Leden SET goals .........
goal is geen CONSTANT in:
$_POST[goal]
en voetballer ook niet in
$_POST[voetballer]
Edit: @Wesley: Geen backtics in een query zetten. En waar is de foutafhandeling? Hoe weet je of de update wel is gelukt? En ook bij jou bestaan die CONSTANT's niet. En als laatste kloppen je quotes niet.
Gewijzigd op 01/01/1970 01:00:00 door - SanThe -
goal is geen CONSTANT in:
$_POST[goal]
en voetballer ook niet in
$_POST[voetballer]
wat bedoel je daarmee?
De rest begrijp ik en zijn domme foutjes
Gewijzigd op 01/01/1970 01:00:00 door Kevin de Jong
$_POST[goal] moet zijn $_POST['goal']
ah oke bedankt =)
moet je een uitroepteken escapen? volgens mij niet.
doe es...
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
<?
$voetballer=$_POST['voetballer'];
$goal=$_POST['goal'];
mysql_query("UPDATE `Leden` SET `goals` =`goals`+'". $goal ."' WHERE Naam = '". $voetballer ."') OR DIE(mysql_error());
echo "Goals bijgewerkt!";
?>
$voetballer=$_POST['voetballer'];
$goal=$_POST['goal'];
mysql_query("UPDATE `Leden` SET `goals` =`goals`+'". $goal ."' WHERE Naam = '". $voetballer ."') OR DIE(mysql_error());
echo "Goals bijgewerkt!";
?>
SanThe schreef op 27.08.2008 11:41:
Edit: @Wesley: Geen backtics in een query zetten. En waar is de foutafhandeling? Hoe weet je of de update wel is gelukt? En ook bij jou bestaan die CONSTANT's niet. En als laatste kloppen je quotes niet.
Zie mijn edit betreffende de fouten van Wesley.
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 ''goals' ='goals'+2 WHERE Naam = kenneth' at line 1
de '2' en 'kenneth' zijn keurig uit de dropdown box gelezen alleen nu klopt er iets niet met het optellen van hetgeen al in goals staat (standaardwaarde=0) en het anatal nieuwe goals
Gewijzigd op 01/01/1970 01:00:00 door Kevin de Jong
En goals hoeft tussen quotes!
Backtics (`) horen er al helemaal niet in.
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
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
<?php
$BesturingBestand = "besturing.php";
$BovenBestand = "boven.php";
$OnderBestand = "onder.php";
if(!file_exists($BesturingBestand)) { die("$BesturingBestand kan niet geopend worden!<br><br><i>Webmaster: verander dit bovenin $PHP_SELF.</i>"); }
if(!file_exists($BovenBestand)) { die("$BovenBestand kan niet geopend worden!<br><br><i>Webmaster: verander dit bovenin $PHP_SELF.</i>"); }
if(!file_exists($OnderBestand)) { die("$OnderBestand kan niet geopend worden!<br><br><i>Webmaster: verander dit bovenin $PHP_SELF.</i>"); }
include($BesturingBestand);
include($BovenBestand);
?>
<?
$voetballer = $_POST['voetballer'];
$goal = $_POST['goal'];
mysql_query("UPDATE Leden SET goals = goals + ". $goal ." WHERE Naam = ". $voetballer ."") OR DIE(mysql_error());
echo "Goals bijgewerkt!";
mysql_close();
?>
<?
include($OnderBestand);
?>
$BesturingBestand = "besturing.php";
$BovenBestand = "boven.php";
$OnderBestand = "onder.php";
if(!file_exists($BesturingBestand)) { die("$BesturingBestand kan niet geopend worden!<br><br><i>Webmaster: verander dit bovenin $PHP_SELF.</i>"); }
if(!file_exists($BovenBestand)) { die("$BovenBestand kan niet geopend worden!<br><br><i>Webmaster: verander dit bovenin $PHP_SELF.</i>"); }
if(!file_exists($OnderBestand)) { die("$OnderBestand kan niet geopend worden!<br><br><i>Webmaster: verander dit bovenin $PHP_SELF.</i>"); }
include($BesturingBestand);
include($BovenBestand);
?>
<?
$voetballer = $_POST['voetballer'];
$goal = $_POST['goal'];
mysql_query("UPDATE Leden SET goals = goals + ". $goal ." WHERE Naam = ". $voetballer ."") OR DIE(mysql_error());
echo "Goals bijgewerkt!";
mysql_close();
?>
<?
include($OnderBestand);
?>
alleen dit is mijn error, het lijkt wel of mijn variabele wordt gelezen als een collum..
Unknown column 'kenneth' in 'where clause'
(kenneth = $voetballer)
Gewijzigd op 01/01/1970 01:00:00 door Kevin de Jong
WHERE Naam = kenneth
Dus je vergelijkt inderdaad 2 kolommen.
Net als in AND voetballer.team_id = teams.id
Wat jij mist zijn 2 simpele dingen: de '.
WHERE Naam = '$voetballer'
Dat escapen is wel leuk, maar met een goede controle nergens voor nodig!
jij bent mijn held, bedankt!
De eerste keer was het gewoon iets vergeten (kleurcodering helpt!) waardoor je iets niet goed afsloot.
En nu is het net iets anders.
Het is een kwestie van wennen.
Maar goed, fijn dat het is opgelost.