Page 1 sur 1

comment afficher je resultat d'un requete sql ?

Posté : 30 juin 2005, 16:14
par Invité
bonjour j'ai un cetain nombre de requetes du genre :
$sql2 = "SELECT count(*) FROM utiliser WHERE reference='$rreference' AND service='$bureau'";
                $result_sql2 = mysql_query($sql2) or die(mysql_error());
                
                $sql3 = "SELECT prix FROM cartouche WHERE reference='$rreference'";
                $result_sql3 = mysql_query($sql3) or die(mysql_error()); 
et je cherche a obtenir leur resultat (car la lorsque je les affiche elle me donne ressource id#1 . . . ect) et j avais deja eu ce probleme que j avais reussit a regler mais la j ai un trou de mémoire et je retrouve pas :(

Posté : 30 juin 2005, 16:15
par ouckileou

Posté : 30 juin 2005, 16:16
par mere-teresa
Il faut que tu traites les résultats. Là tu obtiens juste un pointeur sur les résultats.

Je te recommande le tutorial suivant :
http://www.phpfrance.com/tutoriaux/inde ... l-avec-php

Va directement au 4- Affichage des données

Posté : 30 juin 2005, 16:54
par Invité
Bon tres bien mais ca ne marche toujours.
Je vous expose mon code :
<html>
<body bgcolor="#000066" text="yellow">
<?php

include("connect.php");


$bureau = $_POST['bureau'];    



 
 $sql1 = "SELECT distinct(reference),num_imprimante FROM utiliser WHERE service='$bureau'"; 
 $result_sql1 = mysql_query($sql1) or die(mysql_error());

 $nblignes = mysql_numrows($result_sql1);

echo "<table BORDER=3><tr><td><strong>_____'$bureau'_____</td><br></tr>\n";
 
$total=0;
for ($i=0;$i<$nblignes;$i=$i+1)   {
	
              	
                $rreference = mysql_result($result_sql1,$i,"reference");
		$rnum_imprimante = mysql_result($result_sql1,$i,"num_imprimante");
               
		$sql2 = "SELECT count(*) FROM utiliser WHERE reference='$rreference' AND service='$bureau'";
                $result_sql2 = mysql_query($sql2) or die(mysql_error());
                

                $sql3 = "SELECT prix FROM cartouche WHERE reference='$rreference'";
                $result_sql3 = mysql_query($sql3) or die(mysql_error()); 
                $rsql3 = mysql_result($result_sql3,$i,"prix");  

                $total = $result_sql2*$result_sql3;

                $sql4 = "SELECT imprimante FROM imprimante WHERE num_imprimante='$rnum_imprimante'";
                $result_sql4 = mysql_query($sql4) or die(mysql_error()); 
                $rsql4 = mysql_result($result_sql4,$i,"num_imprimante");  

echo "<tr><td align=center></td>$result_sql4<td align=center>$rreference</td><td align=center>$result_sql2</td><td align=center>$rsql3</td><td align=center>$total</td></tr>";

				  }


echo"</table>";
mysql_close();

?>






<br><br><br><br><br><br><br><br><br><br><br>
<p align='center'>Suppression reussie .</p>
<br><br><br><br><br><br>
<p align='center'><a href=../supprimer_service/formulaire1.php>supprimer un service</a></p>

</body>
</html>
et en fait ce sont les requete qui sont dans le for que dont je n arrive pas a renvoyer le resultat.

quand a cette requete j arrive a renvoyer le resultat lors qu premier passage de la boucle mais au suivant je n est plus rien avec pien de message du genre

Warning: mysql_result(): num_imprimante not found in MySQL result index 7 in c:\program files\easyphp1-8\www\ges_imprimante\visu_conso\visu_conso.php on line 38
Resource id #7 1040995 Resource id #5 18.00 30

Warning: mysql_result(): Unable to jump to row 1 on MySQL result index 9 in c:\program files\easyphp1-8\www\ges_imprimante\visu_conso\visu_conso.php on line 32

Warning: mysql_result(): Unable to jump to row 1 on MySQL result index 10 in c:\program files\easyphp1-8\www\ges_imprimante\visu_conso\visu_conso.php on line 38
Resource id #10 108R604 Resource id #8 72

Warning: mysql_result(): Unable to jump to row 2 on MySQL result index 12 in c:\program files\easyphp1-8\www\ges_imprimante\visu_conso\visu_conso.php on line 32

Warning: mysql_result(): Unable to jump to row 2 on MySQL result index 13 in c:\program files\easyphp1-8\www\ges_imprimante\visu_conso\visu_conso.php on line 38
Resource id #13 108R605 Resource id #11 132

Warning: mysql_result(): Unable to jump to row 3 on MySQL result index 15 in c:\program files\easyphp1-8\www\ges_imprimante\visu_conso\visu_conso.php on line 32

Warning: mysql_result(): Unable to jump to row 3 on MySQL result index 16 in c:\program files\easyphp1-8\www\ges_imprimante\visu_conso\visu_conso.php on line 38
Resource id #16 54645A Resource id #14 210

Warning: mysql_result(): Unable to jump to row 4 on MySQL result index 18 in c:\program files\easyphp1-8\www\ges_imprimante\visu_conso\visu_conso.php on line 32

Warning: mysql_result(): Unable to jump to row 4 on MySQL result index 19 in c:\program files\easyphp1-8\www\ges_imprimante\visu_conso\visu_conso.php on line 38
Resource id #19 C1823d Resource id #17 306

voila donc la je comprend plus gran dchose et je sais pas trop comment faire.

D autre part je vois pas comment faire le mysql_result avec cette requete
$sql2 = "SELECT count(*) FROM utiliser WHERE reference='$rreference' AND service='$bureau'";
                $result_sql2 = mysql_query($sql2) or die(mysql_error());
merci

Posté : 30 juin 2005, 17:00
par ouckileou
déjà une :
$sql4 = "SELECT imprimante FROM imprimante WHERE num_imprimante='$rnum_imprimante'";
                $result_sql4 = mysql_query($sql4) or die(mysql_error());
                $rsql4 = mysql_result($result_sql4,$i,"num_imprimante"); 
tu essayes de récupérer le champ" num_imprimante" mais tu ne le sélectionnes pas

docn erreur :
Warning: mysql_result(): num_imprimante not found in MySQL result index 7 in c:\program files\easyphp1-8\www\ges_imprimante\visu_conso\visu_conso.php on line 38
Resource id #7 1040995 Resource id #5 18.00 30 

pour utiliser mysql_result avec un count(*), nomme le résultat renvoyé
$sql2 = "SELECT count(*) AS total FROM utiliser WHERE reference='$rreference' AND service='$bureau'";
$result_sql2 = mysql_query($sql2) or die(mysql_error());
$result = mysql_result($result_sql2,$i,"total"); 

Posté : 30 juin 2005, 17:14
par Invité
ok merci j ai corrige et j ai mis ce que tu ma dit.
Donc maintenant je n ai plus qu un seul type d erreur mais je l ai une bonne 20 aine de fois c est les :"Warning: mysql_result(): Unable to jump to row . . .."

D'ou vient ce probleme ? (je pense que ca ca du fait que me requete, ne son sense ne renvoyer qu un seul resultat or lui va chercher apres au ligne 2,3,4 et donc il ne trouve rien.)

est t'il possible d enlever le $i et de lui mettre un truc du genre "1" pour qu il reste sur la premiere ligne du resultat de la requete ?

Posté : 30 juin 2005, 17:19
par mere-teresa
Utilise plutôt mysql_fetch_row()
ou mysql_fetch_array()
http://www.nexen.net/docs/php/annotee/f ... ch-row.php

Posté : 01 juil. 2005, 01:13
par pjl
et jette donc un oeil du coté des requêtes avec jointure.

Posté : 01 juil. 2005, 13:59
par Invité
tres bien, merci beaucoup avec
Utilise plutôt mysql_fetch_row()
*

ca tourne au poil :wink:

Donc je met mon :arrow: [resolu]

Posté : 01 juil. 2005, 14:01
par Invité
sauf que je peux pas j ai pas l option pour le resolu :oops:

donc si un modo veux bien le mettre se serait gentil ^^

Posté : 01 juil. 2005, 14:01
par Cyrano
C'est fait ;)