Probleme en PHP, MAJ table

Résolu
Bonjour,
J'ai un probleme de MAJ de table, j'ecris un script en php qui me met a jour les données de ma table contact
Pour cela je recupere l'id du contact dans une variable et j'ai fait ceci

echo '<form method="post" action="maj_CONTACTN_entreprise.php">
<input type="text" name="CONTACTNOM">
<input type="submit" value="Modifier">';
echo '</td>';
echo '<td>';
echo '<form method="post" action="sup_CONTACTN_entreprise.php">
<input type="hidden" name="id" value="'.$data[1].'" />
<input type="submit" value="Supression">';
echo '</td>';
echo '</tr>';
echo '</table><hr size=2 color=black>';

Ensuite cela lance, pour la suppression ceci

$sql ='UPDATE bqstg_contact SET nom = ' ' WHERE id = "'.$_POST['id'].'";';

Seulement aucun changement ne s'opere

Pourquoi?

Merci
Configuration: Windows XP
Firefox 3.0.10

13 réponses

  1. Déjà ca peut pas marcher :
    il faudrait mettre quelquechose du genre :

    $id = $_POST['id'];
    $sql ="UPDATE bqstg_contact SET nom = ' ' WHERE id ='$id'";

    pour ne plus avoir de problème avec les accents

    ensuite tu utilises bien un mysql_query pour envoyer la requete ?
    1. Oui Oui, a chaque essai je visualise le resultat directement dans la table avec phpmyadmin et rien ne change
      1. Malgré l'ajout de la variable $id, il n'y a toujours pas de changement
        1. et ca te renvoit pas d'erreur ta requete ?

          pour le voir tu fais un
          if(mysql_query($requete)){}else{echo mysql_error();}

          edit : je n'avais pas changé que la variable id, y'avait aussi les ' qui n'allaient pas ^^
          1. J'ai une ligne qui test si la requete a reussi ou pas

            $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());

            La page est blanche sans aucun message avant la redirection
            1. Si sa peux aider :

              $sql5=" .........."

              $req5 = mysql_query($sql5) or die("erreur de connexion 5".mysql_error());

              //Tableau 5

              echo '<table border="1" width="75%">';
              echo '<tr>';
              echo '<td>';
              echo 'Nom Contact';
              echo '</td>';
              echo '<td>';
              echo 'Modification/Ajout';
              echo '</td>';
              echo '<td>';
              echo 'Supression';
              echo '</td>';
              echo '</tr>';
              echo '</table>';

              //boucle pour afficher le resultat de la requete dans un tableau
              while ($data = mysql_fetch_row($req5))
              {
              echo '<table border="0" width="75%">';
              echo '<tr>';
              echo '<td>';
              echo $data[0];
              echo '</td>';
              echo '<td>';

              echo '<form method="post" action="maj_CONTACTN_entreprise.php">
              <input type="text" name="CONTACTNOM">
              <input type="submit" value="Modifier">';
              echo '</td>';
              echo '<td>';
              echo '<form method="post" action="sup_CONTACTN_entreprise.php">
              <input type="hidden" name="id" value="'.$data[1].'" />
              <input type="submit" value="Supression">';
              echo '</td>';
              echo '</tr>';
              echo '</table><hr size=2 color=black>';
              }
              1. Heu c'est quoi ces 2 forms inbriqués ?
                faut fermer le premier avant d'ouvrir le suivant
                1. Oui merci en effet sa posais probleme.
                  Maintenant sur le clic voila l'erreur :
                  Parse error: parse error in ...... on line 22

                  La ligne 22 est la requete :
                  $sql ='UPDATE bqstg_contact SET nom = ' ' WHERE id = '$id'";';
                  1. Ben c'est ce que je disais plus haut, le problème des ' ^^
                    reprend le code que j'avais mis, c'est à dire celui-ci :
                    $id = $_POST['id'];
                    $sql ="UPDATE bqstg_contact SET nom = ' ' WHERE id ='$id'";
                    1. Il n'y a plus d'erreur qui s'affiche mais le resultat est toujours le meme : Aucun changement.
                      1. Ha c'est bon sa marche petit souci de guillement a la fin du script.

                        Merci bcp

                        A bientot