ben met een zoek en update script bezig geweest hij zoekt alles mooi op maar zodra ik het probeer te update krijg ik

Couldn't execute query. 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 ''klantvoornaam='Benjamin', klanttussenvoegsel='', klantachternaam='Heinze', klan' at line 1

ben nog niet zo heel lang bezig met php dus hulp is echt welcome de script die het probleem geeft.

phpcode
<?php

$Key=$_POST['keyfield'];
$berichten_id=$_POST["berichten_id"];
$klantvoornaam=$_POST["klantvoornaam"];
$klanttussenvoegsel=$_POST["klanttussenvoegsel"];
$klantachternaam=$_POST["klantachternaam"];
$klanttelefoonnummer=$_POST["klanttelefoonnummer"];
$datum=$_POST['datum'];
$klachtomschrijving=$_POST["klachtomschrijving"];
$hardwareomschrijving=$_POST["hardwareomschrijving"];
$softwareomschrijving=$_POST["softwareomschrijving"];
$klachtafgewikkeld=$_POST["klachtafgewikkeld"];

$data= "UPDATE klachten SET 'klantvoornaam='$klantvoornaam', klanttussenvoegsel='$klanttussenvoegsel', klantachternaam='$klantachternaam', klanttelefoonnummer='$klanttelefoonnummer',
datum='$datum', klachtomschrijving='$klachtomschrijving', hardwareomschrijving='$hardwareomschrijving', softwareomschrijving='$softwareomschrijving',
klachtomschrijving='$klachtomschrijving', klachtafgewikkeld='$klachtafgewikkeld' WHERE klantvoornaam=".'"'.$Key.'"';

$query = mysql_query($data) or die("Couldn't execute query. ". mysql_error());

?>
Zet je code eens tussen <?php ?> en code tags zodat het hier in het forum beter leesbaar is.

- $Key=$_POST['keyfield']; kun je allemaal weg doen, is nergens voor nodig. Gewoon $_POST gebruiken dan zie je ook waar de waardes vandaan komen.

- Sql injection mogelijk "Ja dit is behoorlijk gevaarlijk"

- die is geen mooie fout afhandeling. Jij gaat toch ook niet dood als je iets fout doet of wel?

- Haal je vars eens buiten quotes.

Over de fout. Je hebt een enkele quote voor klantvoornaam staan. die geeft zo te zien de fout.

klantvoornaam= '".mysql_real_escape_string($_POST['klantvoornaam'])."'

Kijk eens op www.phptuts.nl daar staan een aantal nederlandse tutorials op, Ik zou dan gelijk naar MySQLi en PDO kijken aangezien je toch pas net bent begonnen zo te zien.

:p het klinkt wat negatief maar ik kan er niets aan doen dat er zoveel aan fout is.
die is geen mooie fout afhandeling. Jij gaat toch ook niet dood als je iets fout doet of wel?


?? nee natuurlijk niet
maar heel erg bedankt
cya Benji

Reageren