Boucle for pour un contenu php

Fermé
nana - Modifié par nana le 12/06/2014 à 10:11
nanaval31 Messages postés 20 Date d'inscription jeudi 12 juin 2014 Statut Membre Dernière intervention 23 juin 2014 - 12 juin 2014 à 14:02
Bonjour,

J'essaye de faire une boucle for avec un contenu html.. Mais je galère un peu !
voici mon code


for ($var = 1; $var <= 10; $var++)
    
    {
    
       echo '<ul>'
       variable $var is now = ' . $x . '
        <li class="itmList">
           <a href="" attr-id="HPAMID065FS0005U">
                <div class="placeholder">
            
                <img src="<?php echo $photo1; ?>" alt="nom de lo'objet : libelé">
                </div>
                <h2><?php echo $nom1; ?></h2>
                <p class="description"><?php echo $description1; ?></p>
                <p class="location">Location : <?php echo $location1; ?></p>
            </a>
        </li>  
    '</ul>'
    
    }



Bon déjà je dois avoir des problèmes de syntaxes .....
Les variable $nom1 , $description1, $location1 et $photo1 me récupère des données XML; Sans la boucle , cela fonctionne, mais il arrive que pour une même page xml, j'ai justement plusieurs noms, descriptions etc... donc je voudrai que tant qu'il y a des donées de ce type dans mon xml, il faut les afficher sous forme de liste...

Vous pouvez m'aider ?

Merci :)




A voir également:

11 réponses


Tu mélanges php et html dans ton code, voilà une version qui marche.
<?php

for ($i = 1; $i <= 10; $i++)
{

echo '<ul>';
echo "variable $i is now = ' . $x . '";
echo " <li class='tmList'>
<a href='' attr-id='HPAMID065FS0005U'>
<div class='placeholder'>

<img src='$photo1' alt='nom de l\'objet : libelé'>
</div>
<h2>$nom1</h2>
<p class='description'>$description1</p>
<p class='location'>Location : $location1</p>
</a>
</li>
</ul>";
}

?>
1
dj-postka Messages postés 2305 Date d'inscription dimanche 11 mai 2008 Statut Membre Dernière intervention 11 février 2019 302
12 juin 2014 à 09:50
Je ne suis pas un expert en php, mais pourquoi de ne pas faire une boucle while ?
0
Imagine43 Messages postés 264 Date d'inscription jeudi 5 juin 2014 Statut Membre Dernière intervention 15 novembre 2023 54
Modifié par Imagine43 le 12/06/2014 à 09:53
Bonjour Nana !

Pourrais-tu modifier ton post de manière à que le code s'affiche en entier ? [Utilise les balises < code > et < / code >]
Merci d'avance.

Cdt,
Imagine.

The Gift Of the Godess'.
0
Bonjour imagine

Si je mets les balises code , il n'y a plus les couleurs dans le code... et il y a toujours " lire la suite "
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Imagine43 Messages postés 264 Date d'inscription jeudi 5 juin 2014 Statut Membre Dernière intervention 15 novembre 2023 54
12 juin 2014 à 10:06
Mince.

Bien, pourrais-tu me l'envoyer par MP ? Parce que je n'ai pas de bouton "lire la suite".
Néanmoins je suis d'accord avec Dj, une boucle while serait - à mon sens - plus appropriée.

Cdt,
Imagine.
0
Ok Imagine, attend je m'inscris sinon je ne peux pas t'envoyer de message privée !

Merci à toi :)
0
nanaval31 Messages postés 20 Date d'inscription jeudi 12 juin 2014 Statut Membre Dernière intervention 23 juin 2014
12 juin 2014 à 10:22
je me suis inscrite donc je suis nanaval31 maintenant :)
oui tu as raison peut être que ça cerait plus adapté
J'essaye et je vous montre
merci dj
0
Imagine43 Messages postés 264 Date d'inscription jeudi 5 juin 2014 Statut Membre Dernière intervention 15 novembre 2023 54
12 juin 2014 à 10:34
Qalo a été plus rapide que moi. ^^
Mais à vue de nez, je pense que cela devrait être fonctionnel en effet.

Tu avais plusieurs erreurs, notamment des erreurs classiques telles que de ne pas différencier l'usage des " et des ' lorsque tu utilises Echo/Print, ou encore ne pas mettre de ";" à la fin de chaque instruction. ^^

Bonne chance pour la suite!

Imagine.
0
nanaval31 Messages postés 20 Date d'inscription jeudi 12 juin 2014 Statut Membre Dernière intervention 23 juin 2014
12 juin 2014 à 10:35
Salut Qalo, merci pour ton aide
Je mélange effectvement php et html, j'ai du mal avec les côte
J'ai testé ton code, et j'ai une erreur sur la ligne
echo "variable $i is now = ' . $x . '";


De plus, au lieu de m'ajouter les deux différents nom description et location, il me répète le même sur toute la page .......
0
Imagine43 Messages postés 264 Date d'inscription jeudi 5 juin 2014 Statut Membre Dernière intervention 15 novembre 2023 54
Modifié par Imagine43 le 12/06/2014 à 11:28
Re-Bonjour Nana,

Dis-moi, y a-t-il un nombre de données spécifiques? Où les données sont-elles rentrées par l'utilisateur?
Parce que je viens de penser à une syntaxe avec un foreach. Qui est plus difficile à utiliser mais qui au final est beaucoup plus pratique.

Je te donne un exemple de code que j'ai mis au point il y a quelques jours.

Code HTML :

<ul id="list2" name="acces">
<li><input type="checkbox" name="entity[]" value="CA"/>CA</li>
<li><input type="checkbox" name="entity[]" value="DCE"/>DCE</li>
<li><input type="checkbox" name="entity[]" value="DSB"/>DSB</li>
<li><input type="checkbox" name="entity[]" value="DSR"/>DSR</li>
<li><input type="checkbox" name="entity[]" value="DSS"/>DSS</li>
<li><input type="checkbox" name="entity[]" value="DT"/>DT</li>
<li><input type="checkbox" name="entity[]" value="HSE"/>HSE</li>
<br/>
<br/>
<label for="fonction">Fonction :<br/></label><input type="text" name="fonction"/><br/>
<label for="Bureau">Bureau si connu :<br/></label><input type="text" name="Bureau"/>

</ul>

Et en PHP on aura :

foreach ($_POST['entity'] as $acces)
{
$message .="Le nouvel arrivant aura accès à $acces .\r\n\r\n";
}

Petite explication : Dans le HTML, j'ai crée un tableau dans un formulaire qui s'appelle Entity[] (qui s'imcrémente tout seul) . Ensuite via le foreach, on peut récuperer chaque entrée et les ressortir ailleurs.
$_POST sert à récuperer ces données, car le formulaire utilise la methode POST.
"foreach ($_POST['entity'] as $acces" :> $acces est une variable créée à ce moment précis, elle n'est pas déclarée dans le code php avant.
Tu l'auras compris, ces infos sont transmises par mail. ($message .=) Mais tu peux très bien remplacer ceci par print " Le nouvel arrivant aura accès à $acces </br>" .

Imagine.

The Gift Of the Godess'.
0
nanaval31 Messages postés 20 Date d'inscription jeudi 12 juin 2014 Statut Membre Dernière intervention 23 juin 2014
12 juin 2014 à 14:02
Re bonjour imagine

Merci pour tes explications très détaillées.
En fait , j'ai fait un formulaire avec une liste déroulante où l'utilisateur choisit une ville. Quand il choisit une ville, il tombe sur un code xml , et c'est ce code xml que j'ai parcouru et affiché avec mes variable $nom1, $description1 etc...
Et pour une ville, j'ai deux noms différents, deux descriptions différents etc...
Avec mon simple code, il ne m'affiche qu'un seul nom, et la description qui va avec mais pas l'autre nom et sa description adequate. Voilà pourquoi j'ai besoin d'une boucle, .

Merci pour l'idée de foreach , je vais essayer de voir ça :)
Je posterai mon code ensuite !
0