Erreur pendant une requète

Erreur pendant une requète - SQL/NoSQL - Programmation

Marsh Posté le 08-12-2008 à 08:22:25    

Bonjour,
 
En PHP/Mysql, je dispose d'une table intitulée matable dans laquelle je souhaite incrémenter la valeur comprise dans le champ nbre et ce lorsque la valeur du champ f est égal à la variable $Atraduire. J'obtiens le message d'erreur Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-8\www\portable\toto.php on line 88.
Une âme charitable verrait-elle mon erreur ?
Merci d'avance.
 
----------------- Extrait du code -----------------------------------
 
87: // Requète
88: $select = "SELECT f,a,nbre FROM matable WHERE f = '$Atraduire'";
89: $result =mysql_query($select,$link) or die ('Erreur :'.mysql_errno().mysql_error());
90: $rows1 = mysql_num_rows($result);
91: echo $rows1;
   
if ($rows1 > 0)
 {
  // Le terme est présent dans la table matable
  while($Fr1=mysql_fetch_array($rows1))
   {
    $nbre = $Fr1['nbre'];
 
tete278

Reply

Marsh Posté le 08-12-2008 à 08:22:25   

Reply

Marsh Posté le 08-12-2008 à 08:29:31    

et en remplacant

 
Code :
  1. $select = "SELECT f,a,nbre FROM matable WHERE f = '$Atraduire'";
 

par

 
Code :
  1. $select = "SELECT f,a,nbre FROM matable WHERE f = '".$Atraduire."'";


Message édité par bricocoman le 08-12-2008 à 08:30:01
Reply

Marsh Posté le 09-12-2008 à 08:07:02    

Bonjour Bricocoman et merci pour ta participation,
 
Je viens de tester ta proposition et obtiens malheureusement le même résultat. Aurais-tu une autre idée ?
Merci d'avance,
tete278

Reply

Marsh Posté le 09-12-2008 à 11:10:09    

Dans :
while($Fr1=mysql_fetch_array($rows1))
 
tu ne passes pas ce qu'il faut à mysql_fetch_array. La fonction attend autre chose. Je te laisse chercher quoi !


---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98
Reply

Marsh Posté le 10-12-2008 à 08:23:17    

Bonjour kao,
 
Merci pour ta remarque (pertinente) et qui répond à ma question, j'aurais dû mettre le code suivant :
 
87: // Requète  
88: $select = "SELECT f,a,nbre FROM matable WHERE f = '$Atraduire'";  
89: $result =mysql_query($select,$link) or die ('Erreur :'.mysql_errno().mysql_error());  
90: $rows1 = mysql_num_rows($result);  
91: echo $rows1;  
   
if ($rows1 > 0)  
 {  
  // Le terme est présent dans la table matable  
  while($Fr1=mysql_fetch_array($result))  
   {  
    $nbre = $Fr1['nbre'];
$nbre++;
     $sql20 = "update anglaisajoutvoc set nbre=$nbre";
     $req20 = mysql_query($sql20,$link) or die ('Erreur :'.mysql_errno().mysql_error());

Reply

Marsh Posté le 10-12-2008 à 08:23:17    

Bonjour kao,
 
Merci pour ta remarque (pertinente) et qui répond à ma question, j'aurais dû mettre le code suivant :
 
87: // Requète  
88: $select = "SELECT f,a,nbre FROM matable WHERE f = '$Atraduire'";  
89: $result =mysql_query($select,$link) or die ('Erreur :'.mysql_errno().mysql_error());  
90: $rows1 = mysql_num_rows($result);  
91: echo $rows1;  
   
if ($rows1 > 0)  
 {  
  // Le terme est présent dans la table matable  
  while($Fr1=mysql_fetch_array($result))  
   {  
    $nbre = $Fr1['nbre'];
$nbre++;
$sql20 = "update matable set nbre=$nbre";
$req20 = mysql_query($sql20,$link) or die ('Erreur :'.mysql_errno().mysql_error());
 
Ceci étant, je cherche à n'incrémenter que l'enregistrement pour lequel le champ f vaut $Atraduire, mais ici, ce sont tous les enregistrements qui augmentent. Comment puis-je faire ?
Encore merci.
 
tete278


Message édité par tete278 le 10-12-2008 à 08:26:35
Reply

Marsh Posté le 13-12-2008 à 08:51:46    

Bonjour à tous,
 
Devant le peu d'intérêt que ce cas entraîne, je clos la discussion en remerciant les personnes qui s'y sont intéressées et en particulier bricocoman et kao98.
Merci,
 
tete278

Reply

Sujets relatifs:

Leave a Replay

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