Page 1 sur 1

probleme pour récupérer les données php/sql

Posté : 26 janv. 2011, 16:07
par xiaou
bonjour tlm,

Je reprend le code de quelqu'un aujourd'hui dans le cadre d'un projet. (je suis obligé j'aurais préféré le coder dès le début mais bon.)
sql_mysql_query ("SELECT DISTINCT YEAR( date_commande ) AS annee
FROM commandes
WHERE statut
IN ( 2, 3, 4, 100 )
ORDER BY annee DESC");
			
while ($row_annees = mysql_fetch_object($query_annees)) {
    $tab_annees[$row_annees->annee] = $row_annees->annee;
}
arsort($tab_annees);
Le problème c'est $tab_annees semble vide !
Alors que la requête fonctionne très bien sur phpmyadmin et me retourne des résultats.
Le problème doit venir du mysql_fetch_object.
jai remplacer mysql_fetch_object($query_annees)) par mysql_fetch_object($query)
J'ai essayer beaucoup de chose, je ne comprend pas très bien d'où est le problème.

Je vous remercie d'avance pour l'aide que vous m'apporterez.

Re: probleme pour récupérer les données php/sql

Posté : 26 janv. 2011, 17:25
par Berzemus
Un peu plus de code ne ferait pas de mal, car la, on ne voit pas quelle variable fait le lien entre la requête DB et ta boucle.. Ou est défini $query_annees ? $query ?

Bref, avec un peu plus de contexte, on pourrait y voir plus clair.

Re: probleme pour récupérer les données php/sql

Posté : 26 janv. 2011, 17:38
par AoSiX
Tu as fais un var_dump sur $row_annees pour voir ? penses aussi à utiliser mysql_num_rows pour savoir si ta requêtes renvoi quelquechose

Re: probleme pour récupérer les données php/sql

Posté : 26 janv. 2011, 18:08
par xiaou
$sql = mysql_query ("SELECT DISTINCT YEAR( date_commande ) AS annee
FROM commandes
WHERE statut
IN ( 2, 3, 4, 100 )
ORDER BY annee DESC");		


while ($row = mysql_fetch_object($sql)){
	echo $row->annee;
	echo "iiiiiiiiiiiiiiiiiiiiiiiii";
	}
	$nombre = mysql_num_rows( $sql );
	echo $nombre;
	var_dump($row);

J'ai un peu modifier les choses, ca me semble plus logique comme ca . Mais j'ai bien vérifier la requête est bonne, elle me donne deux années par phpmyadmin.
Or ici, la ligne de test iiiiiiiiiiiii ne s'affiche jamais, pire encore $nombre=0 et var_dump me donne: bool(false) :s :s

Re: probleme pour récupérer les données php/sql

Posté : 26 janv. 2011, 22:36
par moogli
Yop,

dans ton code le var_dump va toujours donner false c'est ce qui fait que le while s'arrete :)


fait un var_dump(sql); juste après le mysql_query().

si $sql === false affiche le résultat de mysql_error().

@+