Page 1 sur 1

Warning: mysql_fetch_array()

Posté : 01 nov. 2005, 16:46
par yuuzhantar
j'ai un petit probleme avec mysql_fetch_array

pour compter le nombre de bannières, j'ai fait ce petit code
<?php
$db = mysql_connect('sql.free.fr', 'xxx', 'xxx'); // 1
mysql_select_db('yuu_sw',$db); // 2
$req = mysql_query("SELECT ban_id FROM a_ban WHERE user_id='$id3'"); // 3
$res = mysql_num_rows($req);
$nbre_ban = $res; // 4

echo"Vous avez $nbre_ban bannieres actives"; // 5

$sql = mysql_query("SELECT ban_emp FROM a_ban WHERE user_id='$id3'");
$ret = mysql_fetch_assoc($sql);
while($aff = mysql_fetch_array($ret))
{
'<p><div align=/"center"/><img src=/"'.$aff['ban_emp'].'"/></div></p>';
}

mysql_close($db); // 6
?>
mais sa m'affiche
Vous avez 1 bannieres actives
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/sdc/0/8/yuu.sw/echange/membres/ban.php on line 121

qu'est ce qui ne vas pas ???

Posté : 01 nov. 2005, 16:50
par ouckileou
mysql_fetch_array attend une resource, ce qui est renvoyé par mysql_query

Or là tu lui passes le résultat de mysql_fetch_assoc

Tu n'as pas besoin de ces deux fonctions (mysql_fetch_array ou mysql_fetch_assoc), c'est l'une ou l'autre :)
mysql_fetch_assoc() revient à appeler la fonction mysql_fetch_array() avec MYSQL_ASSOC en tant que second paramètre.

Posté : 01 nov. 2005, 17:30
par yuuzhantar
c bon c réglé

au lieu de
$sql = mysql_query("SELECT ban_emp FROM a_ban WHERE user_id='$id3'");
$ret = mysql_fetch_assoc($sql);
while($aff = mysql_fetch_array($ret))
{
j'ai mis
$sql = mysql_query("SELECT ban_emp FROM a_ban WHERE user_id='$id3'");
while($aff = mysql_fetch_assoc($sql))
{

Posté : 01 nov. 2005, 17:46
par ouckileou
Résolu alors ?

Posté : 01 nov. 2005, 17:49
par yuuzhantar
oui

Posté : 01 nov. 2005, 17:57
par ouckileou
c'est toi qui doit cliquer sur le bouton Résolu en haut du sujet ;)

Posté : 01 nov. 2005, 17:58
par yuuzhantar
ah ok j'avais pas vu