Page 1 sur 1

requete avec une variable dans un tableau

Posté : 21 avr. 2009, 09:10
par Olivier1378
Bonjour,

J'aimerais gérér l'affichage d'une bibliographie ou d'une annuaire de liens sur différentes pages de mon site. Mes liens sont dans une table de données avec un identificateur primaire id_ln


Je passe à la fonction qui va requeter les liens un tableau $liens (qui renferme les id_ln retenus pour la page concernée).

J'ai écris le code suivant, il marche très bien. Mais ne pourrait-on pas faire plus direct ? par exemple avec une syntaxe de type "...WHERE $id_bb in ..."

Grand merci de votre aide.
// Annuaire de liens
function annuaire($liens) {
echo '<ul>';
foreach ($liens as $temp){

$sql = "SELECT * FROM annuaire WHERE id_ln='$temp'";
$req = mysql_query($sql);
$data=mysql_fetch_array($req);
echo "<li><a href=".$data['url']." target=_blank>".$data['descriptif']."</a></li>";
}
echo '</ul>';
}

Posté : 21 avr. 2009, 09:53
par orgerix
Tu pourrai tout condenser en une requete.

Tout d'abord, tu transforme ton tableau en une chaine du type 'temp1','temp2','temp3',...

Ensuite, tu utilise comme tu l'as suggérer la clause IN

Code : Tout sélectionner

SELECT * FROM annuaire WHERE id_ln IN (taChaine)
Ensuite, il faut récupérer les enregistrements un à un.

Au niveau code, ce n'est pas plus rapide, mais je crois que tu y gagne au niveau de ta base de donnée.

Posté : 21 avr. 2009, 10:09
par Invité
Je vais essayer

Merci de ta suggestion