bonjour
je travaille avec MySQL et PHP pour la réalisation d'un site. j'ai la table suivante :
et je souhaite faire une requête dans laquelle on fait la différence entre owed et paid (et ne prendre que les positifs). j'ai donc écrit la requête suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 CREATE TABLE IF NOT EXISTS `elec_retards` ( `idPers` mediumint(9) NOT NULL auto_increment, `personne` text collate latin1_general_ci NOT NULL, `nbRetard` mediumint(9) NOT NULL, `nbAbsence` mediumint(9) NOT NULL, `owed` double NOT NULL, `paid` double NOT NULL, PRIMARY KEY (`idPers`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=7 ;
pour finalement aboutir à la fonction PHP suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT personne, owed-paid AS diff FROM elec_retards WHERE diff>0
Je pensais que ça serait bon mais le serveur renvoit l'erreur suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 function aff_retard() { $requete=mysql_query( 'SELECT personne, owed-paid AS diff FROM elec_retards' ) ; $compte=0 ; while ($donnees = mysql_fetch_array($requete)) { $compte++ ; if ($compte!=1) echo ', ' ; echo $donnees['personne'].' ('.$donnees['diff'].'€)' ; } }
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in ../retard/retard.php on line 92
savez vous d'où vient le problème ? j'ai pensé que c'était peut-être à cause de la différence, je n'ai pas l'habitude de manier ce genre d'opérations dans les requêtes, mais il me semblait que ça existait.
merci d'avance
Partager