Bonjour,

A partir d'un formulaire simple, l'utilisateur va pouvoir réinitialiser un bon de commande. Pour ce faire, il passe par un script ajax:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$(function(){
    $("#choiceNBonCom").submit(function(){
        ...
        $.post("fonctionsBonCom.php", $("#choiceNBonCom").serialize(), function(data){
            ...
            if(data == ""){
                $("#result").append('Oups! Le bon de commande '+data+' n\'a pas pu être traité correctement').addClass('bad').fadeIn('fast');
            }
            else{
               ...
                $("#result").append("Le bon de commande "+data+" a bien été réinitialisé...;
            }
        });
        return false;
    });
});
Le script php:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
$update = 'UPDATE compta
    SET cout = 0
    WHERE `nBonCom` = "'.$listeNBonCom.'"';
    $requete = mysql_query($update) or die('Erreur SQL!'.$update.'<br>'.mysql_error());
    $nbreLine = mysql_affected_rows();
    //
    if ($nbreLine > 0) {
        echo $listeNBonCom;
    } else {
        echo '';
    }
Le script est fonctionnel, tant qu'il n'y a pas d'erreur côté serveur. Mais si j'en provoque une pour test, par exemple:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
$update = 'UPDATE compta
    SET cout = 0
    WHERE `nBonCom` = ?';
Le Java-script me renvoie toujours le second message
Code : Sélectionner tout - Visualiser dans une fenêtre à part
$("#result").append("Le bon de commande "+data+" a bien été réinitialisé...;
, avec l'erreur sql. Je devrais pourtant voir le premier retour du script. 'data' (java-script) n'est visiblement pas considéré comme vide. Pourquoi ? Comment corriger cela ?
merci,