mon update ne fonctionnne pas!est il correct?

mon update ne fonctionnne pas!est il correct? - SQL/NoSQL - Programmation

Marsh Posté le 09-06-2008 à 15:40:24    

Bonjour!
je réalise 2 update consécutifs afin d'échanger 2 lignes dans ma base de données.Cependant ma base de données reste inchangée après ces requetes
 
//selection de toutes les rubriques principales dans la table $tabRubP
               
            $rezu = mysql_query("SELECT * FROM rubprincipales ORDER BY positionP" );
               
            if($rezu)
            {
              $i = 0;
              while($princ = mysql_fetch_array($rezu))
              {
     
                $tabP[$i][0] = $princ['positionP'];
  $tabP[$i][1] = $princ['titreP'];
  $tabP[$i][2] = $princ['cheminP'];
                $tabP[$i][3] = $princ['numeroP'];
  $i++;
                               
              }
               
            }
             
           
              $rubCourante=$_GET['selection'];
           
            // Parcours de la table $tabRubP et recherche de l'élément séléctionné
            echo "la selection est".$_GET['selection']."--";
            $i=0;  
            foreach($tabP as $va1)
            {
                foreach($va1 as $va2)
                {
                   
                  //A partir de cet élément echange avec l'élément précedent(echange du titre et du chemin seulement)
                                     
                   
                    if (($tabP[$i][0])==$_GET['selection'])
                  {
                         
                    //pour l'échange on recupère les données relatives a la rubrique selectionnée dans des variables intermediaires      
                   
                    $ech1=$tabP[$i-1][0];//la  rubrique selectionnée a pour position la position de la rubrique qui la précède  
                    $ech2=$tabP[$i][1];
                    $ech3= $tabP[$i][2];
                    $ech4=$tabP[$i][3];
                    $itemPrecedent=$ech1;
                           
                                   
                    //on récupère les données de la rubriques précedentes dans des variables intermediaires.
                           
                    $int1=$tabP[$i-1][0]+1;
                    $int2=$tabP[$i-1][1];
                    $int3=$tabP[$i-1][2];
                    $int4=$tabP[$i-1][3];
                           
             
                   
                           
                    /*mise a jour de la bd: les données concernant la rubrique séléctionnée sont mise à la place des données précedent cette meme rubrique.*/
                   
                    $rez0 = mysql_query("UPDATE rubprincipales SET positionP='".$ech1."',titreP='".$ech2."',cheminP='".$ech3."',numeroP='".$ech4."'WHERE positionP='".$itemPrecedent."'" );
                    echo "les rez2 est -->".$rez0;
                   
                           
                           
                    //et les données concernant la rubriques précédente prennent la place des données de la rubrique selectionnée;
                    $rez1 = mysql_query("UPDATE rubprincipales SET positionP='".$int1."',titreP='".$int2."',cheminP='".$int3."',numeroP ='".$int4."'WHERE positionP='".$rubCourante."'" );  
                   
                     echo "les rez3 est -->".$rez1;
 
                  }
             
              $i++;
              }
            }  
               
 
J'ai peut etre fait une erreur de ' ou de " mais il n'y a pas d'erreur lors du lancement de ma requete :heink: Pouvez vous m'éclairez svp Merci d'avance :hello:  
 
 

Reply

Marsh Posté le 09-06-2008 à 15:40:24   

Reply

Marsh Posté le 09-06-2008 à 15:48:32    

Il s'affiche quoi à l'écran?


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 09-06-2008 à 15:54:57    

skeye a écrit :

Il s'affiche quoi à l'écran?


ça affiche ma table a partir de ma base de données qqch du genre ça:
_______________
    n°   |  titre       |
    0    |   un titre  |
   1     |   blabla    |
   2     |    bla       |
 
je veux monter blabla a la place de un titre. donc seul le numero est changé.

Reply

Marsh Posté le 09-06-2008 à 15:59:40    

Oui non c'est pas ça la question.
 
Tu as mis quelques "echo" dans ton script, ils affichent quoi?
Est-ce que tu testes bien systématiquement le retour de mysql_query? Est-ce que tu affiches mysql_error() en cas de problème?


---------------
Can't buy what I want because it's free -
Reply

Marsh Posté le 09-06-2008 à 16:17:50    

oui je teste bien le retour de mysql_query et j'ai mis des echo pour voir si les variables de ma requete etaient bien afféctées. Par contre je je n'utilise pas le "mysql_error" Tu peux m'expliquer stp? merci

Reply

Marsh Posté le 09-06-2008 à 16:19:48    

si le retour de mysql_query est false, affiche mysql_error() pour voir ce qui se passe mal.


---------------
Can't buy what I want because it's free -
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed