Bonjour,

J'ai un problème avec une requête SQL.

Aucun article ne s'affiche.
Si j'enlève le WHERE, tous les articles s'affiche... mais j'ai besoin de cette que des articles qui se trouve dans cette catégorie !

voila mon code:



$c=MYSQL_QUERY("SELECT * FROM categorie");
 
while($tc=MYSQL_FETCH_ARRAY($c)){
 
        echo"<td>
 
        <fieldset class=acc1>
 
        <img src='images/{$tc['imgc']}'width=100 height=100>
 
        <a href='article.php?idd={$tc['id-cat']}'>{$tc['nom-cat']}</a><br>";
 
        }
         
if(isset($_GET['idd']))
{
$re=mysql_query("select * from souscategorie where where id-cat={$_GET['idd']}");
while($rsc=mysql_fetch_array($re)){
echo"{$rsc['id_scat']}";
 
echo"
{$rsc['img']}<td>{$rsc['designation']} >>>> {$rsc['descri']}";
}
}      
 


merci
Bonjour,
Notes bien que
mysql_fetch_assoc() : le tableau ne contient que des index de type chaîne de caractères ($query['id'] par exemple)
mysql_fetch_row() : le tableau ne contient que des index de type entier ($query[0] par exemple)
mysql_fetch_array() : le tableau contient à la fois des index de type chaîne de caractères et des index de type entier, mais tu peux lui passer un paramètre supplémentaire pour n'avoir que les entiers ou les chaînes de caractères (voir la doc)

Vu que mysql_fetch_array() renvoie toutes les données en double il est probablement un peu plus lent que les deux autres, donc a priori je te conseillerais plutôt d'utiliser mysql_fetch_assoc() ou mysql_fetch_row().

Utiliser mysql_fetch_assoc() sera à mon avis plus simple à relire que mysql_fetch_row(), $query[0] étant moins compréhensible que $query['id'] d'après moi...

Pour ta question j'ais un gros doute sur ton terme "id" d'autre part tu écrit deux fois where Smiley confused
saara a écrit :
Bonjour,

J'ai un problème avec une requête SQL.

Aucun article ne s'affiche.
Si j'enlève le WHERE, tous les articles s'affiche... mais j'ai besoin de cette que des articles qui se trouve dans cette catégorie !

voila mon code:



$c=MYSQL_QUERY("SELECT * FROM categorie");
 
while($tc=MYSQL_FETCH_ARRAY($c)){
 
        echo"&lt;td&gt;
 
        &lt;fieldset class=acc1&gt;
 
        &lt;img src='images/{$tc['imgc']}'width=100 height=100&gt;
 
        &lt;a href='article.php?idd={$tc['id-cat']}'&gt;{$tc['nom-cat']}&lt;/a&gt;&lt;br&gt;";
 
        }
         
if(isset($_GET['idd']))
{
$re=mysql_query("select * from souscategorie where id-cat={$_GET['idd']}");
while($rsc=mysql_fetch_array($re)){
echo"{$rsc['id_scat']}";
 
echo"
{$rsc['img']}&lt;td&gt;{$rsc['designation']} &gt;&gt;&gt;&gt; {$rsc['descri']}";
}
}      
 


merci
pour le where c'est just en tapent le code ici
et pour le id c'est pas une chêne c'est un int
Bonjour,

Il vous suffit de modifier les "{...}" par " '...' ".
Du coup votre requête devient comme suit:
-------------
$re=mysql_query("select * from souscategorie where where id-cat='$_GET['idd']' ")?;
-------------
Ou bien vous pouvez mettre $_GET dans une variable (exemple: $a= $_GET['idd'] ; )
et la requête devient comme suit:
---------------
$re=mysql_query("select * from souscategorie where where id-cat='$a' ")?;
---------------