par
Ryle » 06 juil. 2007, 16:04
Ce n'est pas un problème de point-virgule, mais de guillemets et de parenthèse en trop... la coloration syntaxique des balises [ php ] te permettrait de le voir tout de suite :
elseif ($_POST['Validation'] == "Reject")
{
$sql_update_status = "UPDATE BonCommande SET
Status = 2,
Signataire = "$_SESSION['Nom'])"
WHERE `NumBdc` = ".$_GET['id'];
}
Pour délimiter une chaine en sql il te faut utiliser des apostrophes et pas des guillemets... en revanche, les guillemets te permettent de terminer ta chaine et de concaténer une variable à l'aide de points :
" ... Signataire = '" . $_SESSION['Nom'] . "' ... "
@
chrislabricole : Tu peux mettre sans problème des retours à la ligne au milieu d'une chaine, ce qui est d'ailleurs bien pratique pour la lisibilité des requêtes sql :
$sql = " SELECT ...
FROM ...
WHERE ....
ORDER BY .... "; // ma chaine se termine ici, pas besoin d'un ';' à la fin de chaque ligne ou de concaténation
Quant au démarrage de la session il n'y a pas d'ordre pour le mettre, il faut juste le faire avant d'envoyer du code html ou d'utiliser $_SESSION, mais ca pourrait très bien être l'avant dernière ligne de ton code

Ce n'est pas un problème de point-virgule, mais de guillemets et de parenthèse en trop... la coloration syntaxique des balises [ php ] te permettrait de le voir tout de suite :
[php]elseif ($_POST['Validation'] == "Reject")
{
$sql_update_status = "UPDATE BonCommande SET
Status = 2,
Signataire = "$_SESSION['Nom'])"
WHERE `NumBdc` = ".$_GET['id'];
} [/php]
Pour délimiter une chaine en sql il te faut utiliser des apostrophes et pas des guillemets... en revanche, les guillemets te permettent de terminer ta chaine et de concaténer une variable à l'aide de points :
[php]" ... Signataire = '" . $_SESSION['Nom'] . "' ... "[/php]
@[b]chrislabricole[/b] : Tu peux mettre sans problème des retours à la ligne au milieu d'une chaine, ce qui est d'ailleurs bien pratique pour la lisibilité des requêtes sql :
[php]$sql = " SELECT ...
FROM ...
WHERE ....
ORDER BY .... "; // ma chaine se termine ici, pas besoin d'un ';' à la fin de chaque ligne ou de concaténation[/php]
Quant au démarrage de la session il n'y a pas d'ordre pour le mettre, il faut juste le faire avant d'envoyer du code html ou d'utiliser $_SESSION, mais ca pourrait très bien être l'avant dernière ligne de ton code ;)