Tom's Guide > Forum > Programmation > probleme avec la fonction foreach

probleme avec la fonction foreach

Forum Programmation : probleme avec la fonction foreach

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

donc
Dans une de mes tables qui s'appelle labase j'ai plusieurs champs dont
les champs qui s'appellent "sousmenu" et "menu"
dans ces 2 champs il y a comme enregistrement:
champs "genre" = "natation,tennis,football,danse"
champs "lien"= "1.php,2.php,3.php,4.php"
voici le résultat du script ci-dessous:
danse
danse
danse
danse
Donc comment faire pour afficher le résultat ainsi:
natation
tennis
football
danse
ci-desous le script en php
Merci d'avance


Code :
  1. $sql = "SELECT * FROM labase where nom='Jouets'";
  2. $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
  3. echo '<div id="exemple1"><table>
  4.   <tr></div>';
  5. while($data = mysql_fetch_array($req))
  6. {
  7. $mes1 = explode(',',$data['genre']);
  8. foreach($mes1 as $element)
  9. $mes2 = explode(',',$data['lien']);
  10. foreach($mes2 as $element1)
  11. echo '<div id="exemple1">
  12. <span style="font-size:12pt;"><a href="'.$element1.'">'.$element.'</a></span>
  13. </div>';}

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

Pas besoin de l'usine a gaz si tu a dans une table 2 champ avec pour chaque enregistrement son nom et son url :

genre lien
natation 1.php
tennis 2.php

etc

il te suffit dans ta boucle :
echo '<a href="'.$data['lien'].'">'.$data['genre'].'</a>';

si c'est pas ca le probleme explique mieux, et dis bonjour en passant.

Répondre à okinou

si je ne me trompe pas, foreach n'est implémenté qu'avec php4 verifie si ton hebergeur n'est pas en php3 comme free par exemple

Répondre à Tcherno_bill

Bonjour(excuse-moi)
Donc
Dans une de mes tables qui s'appelle labase j'ai plusieurs champs dont
les champs qui s'appellent "sousmenu" et "menu"
dans ces 2 champs il y a comme enregistrement:
champs "genre" = "natation,tennis,football,danse"
champs "lien"= "1.php,2.php,3.php,4.php"
Ce que je voudrais comme resultat c'est:
natation tennis
football danse
que natation est comme lien 1.php
que tennis est comme lien 2.php
que football est comme lien 3.php
que danse est comme lien 4.php
merci d'avance

Répondre à stephane52

Rebonjour,
Si je mets qu'un foreach(celui qui affiche natation,danse....)
cela marche
Mais des que je mets l'autre pour les liens,alors cela
m'affiche que le dernier de la liste c'est à dire ici"danse".cela me l'affiche 4 fois mets avec des liens differents
danse
danse avec 2.php comme lien
danse avec 3.php comme lien
danse avec 4.php comme lien
alors que je veux comme résultat:
natation avec 1.php comme lien
tennis avec 2.php comme lien
football avec 3.php comme lien
danse avec 4.php comme lien
Merci d'avance pour votre aide

Répondre à stephane52

Salut,

Quelque chose dans ce genre :

Code :
  1. $sql = "SELECT * FROM labase where nom='Jouets'";
  2. $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
  3. echo '<div id="exemple1"><table>
  4.   <tr></div>';
  5. while($data = mysql_fetch_array($req))
  6. {
  7. $mes1 = explode(',',$data['genre']);
  8. $mes2 = explode(',',$data['lien']);
  9. for ($i=0; $i<count($mes1); $i++) {
  10. echo '<div id="exemple1">
  11. <span style="font-size:12pt;"><a href="'.$mes1[$i].'">'.$mes2[$i].'</a></span>
  12. </div>';
  13. }}



Non ? (j'ai pas testé...)

Répondre à OmaR
Tom's Guide > Forum > Programmation > probleme avec la fonction foreach
Aller à :

Il y a 783 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens