ik ben bezig aan een website (voor het eerst met php), en alles werkt tot nu toe, behalve de UPDATE query.
dit is de code:

<?php
$titel = $_POST[‘titel’];
$inhoud = $_POST[‘inhoud’];
$id = $_POST[‘id’];
include("connect.php");
$query = "UPDATE 'osschaert' SET 'titel'='$titel', 'inhoud'='$inhoud' WHERE 'id'='$id'";
$sql = mysql_query($query) or die ( mysql_error( ) );
?>

wat doe ik fout?
de error die ik krijg is:
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 ''osschaert' SET 'titel'='', 'inhoud'='' WHERE 'id'=''' at line

hopelijk kunnen jullie me helpen
Volgens mij moeten 'osscheart' en 'titel' e.d. buiten de aanhalingstekens, dus:

<?php
$titel = $_POST[‘titel’];
$inhoud = $_POST[‘inhoud’];
$id = $_POST[‘id’];
include("connect.php");
$query = "UPDATE osschaert SET titel='$titel', inhoud='$inhoud' WHERE id='$id'";
$sql = mysql_query($query) or die ( mysql_error( ) );
?> 
nu geeft hij geen error meer, maar hij past ook de dingen niet aan.

toch bedankt voor de reactie

<?php
$sql = "
UPDATE 
    osschaert 
SET 
    titel='".mysql_real_escape_string($_POST['titel'])."' ,
    inhoud='".mysql_real_escape_string($_POST['inhoudl'])."' 
WHERE 
   id= " .$_POST['id'];

$res=mysql_qeury($sql);
if(mysql_num_rows($res) > 1)// er is resultaat
{
// doe je ding
?>
even je vars buiten quotes.

UPDATE osschaert SET titel='".$titel."', inhoud='".$inhoud."' WHERE id='".$id."'";
Jurgen schreef op 16.02.2007 11:58
even je vars buiten quotes.

UPDATE osschaert SET titel='".$titel."', inhoud='".$inhoud."' WHERE id='".$id."'";


Je vergeet het veiligheidsgedeelte
Klaasjan Boven schreef op 16.02.2007 11:59
[quote='Jurgen schreef op 16.02.2007 11:58']even je vars buiten quotes.

UPDATE osschaert SET titel='".$titel."', inhoud='".$inhoud."' WHERE id='".$id."'";


Je vergeet het veiligheidsgedeelte[/quote]Jij ook..

WHERE
id= " .$_POST['id'];

Is ook niet echt veilig ;-)
Dat beveiligde gedeelte mag hij zelf inbouwen. Ik zou enkel ff gwoon alle vars buiten quotes en dan testen of het werkt, ik heb dit nl ook welleens gehad.
<?php
$sql = "
UPDATE
osschaert
SET
titel='".mysql_real_escape_string($_POST['titel'])."' ,
inhoud='".mysql_real_escape_string($_POST['inhoudl'])."'
WHERE
id= " .intval($_POST['id']);

$res=mysql_qeury($sql);
if(mysql_num_rows($res) > 1)// er is resultaat
{
// doe je ding
?>

ZO dan :P
bedankt Klaasjan Boven die van jou werkt (er zat wel een typfoutje in ;))
ook de rest bedankt voor de reacties

Reageren