[RESOLU] faire une boucle

ViPHP
AB
ViPHP | 5818 Messages

30 nov. 2012, 04:46

donc c'est le preg match qui en cause...
Oui c'était la variable $IdVO qui n'était pas correctement concaténée.
Mais au passage j'ai voulu vous montrer une autre méthode plus rapide à écrire. Cela évite la litanie des "opendir", "readdir" et "closedir".

Après que tu fasse une boucle avec un while ou un foreach, ben ça reste une boucle. Et puis le foreach il faudra bien t'y mettre avec php car c'est le moyen le plus simple de lister un tableau :wink: Surtout que le while est plus compliqué dans l'absolu car il demande toujours une condition, alors que dans un foreach la condition sous entendue est "tant qu'il existe un élément" :)

Avatar du membre
Mammouth du PHP | 1609 Messages

30 nov. 2012, 12:14

Salut, pour info, tu aurais également pu utiliser la fonction file_exists sans faire d'expression régulière (et en admettant que la première image soit suffixée _0 et qu'il n'y ai pas de trou dans la numérotation) :
$dossier = 'photos';
$IdVO = '5';
$i = 0;
while(file_exists($dossier.'/CARDIFF_BBDZ_'.$IdVO.'_'.$i.'.jpg')) {
  echo '<img src="'.$dossier.'/CARDIFF_BBDZ_'.$IdVO.'_'.$i.'.jpg"/><br/>';
  echo 'CARDIFF_BBDZ_'.$IdVO.'_'.$i.'.jpg<br/>';
  $i++;
}
Cela dit la solution de AB est plus flexible et plus puissante.
Développeur web depuis + de 20 ans

Avatar du membre
Mammouth du PHP | 1564 Messages

30 nov. 2012, 12:19

Merci pour l'info du "tant qu'il y a", je vais essayer de mi mettre (question d'évolution)

ViPHP
AB
ViPHP | 5818 Messages

30 nov. 2012, 18:13

Merci pour l'info du "tant qu'il y a", je vais essayer de mi mettre (question d'évolution)
Oui une des grandes forces de php est d'avoir une multitude de fonctions pour travailler sur les tableaux, faut pas s'en priver :)
On se rend compte de la richesse de ces fonctions, si comme moi venant de php, on s'intéresse ensuite à javascript... où là c'est la misère absolue 8-|

Avatar du membre
Mammouth du PHP | 1564 Messages

30 nov. 2012, 18:21

tout s'apprend, il faut simplement s'en donner les moyens

je code avec les fonctions basiques de PHP, pour un petit site c'est bien, j'optimise un max mon code, même si parfois je n'utilise pas les bon moyen pour faire une boucle (entres autres...), tant que ça fonctionne après tout :mrgreen:

Eléphant du PHP | 123 Messages

01 déc. 2012, 15:09

bonjour ,
je reviens car finalement j ai encore des soucis

le code de AB fonctionne cependant je ne comprend pas certaine chose
si je fais seul
echo '<img  width="100" src="'.$dossier.'/'.$value.'"/>'; 
j ai les image ok

si je fais seul ben j ai bien les noms
echo "$value<br />";
mais si je fais les deux
echo '<img  width="100" src="'.$dossier.'/'.$value.'"/>'; 
echo "$value<br />";
ben m affiche qu un seul echo???


EDIT:en faite je galere a integré les images sur ma page html qui possede un lightbox

Avatar du membre
Mammouth du PHP | 1564 Messages

01 déc. 2012, 16:08

Salut,

pour les echo, apprend à concaténer, c'est à dire faire comme ceci pour afficher des variables dans un echo:

echo "$value<br />"; = mauvaise solution

Bonne solution:
echo $value."<br />";
je ne sais pas ce qu'est un lightbox par contre

Eléphant du PHP | 123 Messages

01 déc. 2012, 16:21

merci

en faite le lightbox c est pour afficher les images en zoom comme modal ,je veux inserer mes image dans mon diaporama

tu peux voir l exemple sur ce que je suis en train de faire actuellement et comprendre peut etre plus facilement ou je veux en venir
http://www.creaweb68.fr/autotran/detail ... ails&ID=13

je voudrai que mon echo qui est gerer sur ma page php soit envoyer sur ma page ou j ai mon html

Avatar du membre
Mammouth du PHP | 1609 Messages

01 déc. 2012, 16:49

Salut baddevil, il n'y a normalement aucun problème à faire les 2 echo l'un après l'autre.
Si le texte ne s'affiche pas, je penche plutôt pour une histoire de CSS qui ferait que le texte n'est pas visible bien qu'imprimé.
Développeur web depuis + de 20 ans

Eléphant du PHP | 123 Messages

01 déc. 2012, 17:01

Salut baddevil, il n'y a normalement aucun problème à faire les 2 echo l'un après l'autre.
Si le texte ne s'affiche pas, je penche plutôt pour une histoire de CSS qui ferait que le texte n'est pas visible bien qu'imprimé.
si maintenant avec ce que ma donné AB les deux echo s affiche

maintenant ce que je souhaite c est l integré a cela
<div id="content">
      <div class="section" id="example">
          <div class="imageRow">
  	         <div class="set">
                <table >
                  <tr>
                    <td>
                      <table>
                        <tr>
                          <td>
                              <div class="single first">
  		                            <a href="mon_image" rel="lightbox[plants]" title=""><img width="60" alt="image" src="photos/mon_image" onerror="this.style.display='none';"  onmouseover="affiche(this.href);return false;"/></a>
  		                        </div>
                          </td>
 </tr>
                 </table> 
              </td>
           </tr>
           <tr><td><img  width="330" id="refImg"  src="photos/mon_image" onerror="this.style.display='none';"/></td></tr>
                    
    </table>

Avatar du membre
Mammouth du PHP | 1609 Messages

01 déc. 2012, 17:03

Ben déplace la boucle où il faut dans ton code html.
Développeur web depuis + de 20 ans

Eléphant du PHP | 123 Messages

01 déc. 2012, 17:06

Ben déplace la boucle où il faut dans ton code html.
mes deux fichiers sont independant, j ai un fichier qui traite ma requete et ma boucle et l autre la partie html, comment je fais pour lier la boucle a mon fichier html?

Avatar du membre
Mammouth du PHP | 1609 Messages

01 déc. 2012, 17:08

Tu transformes ta page html en page php et tu mets le php et le html dedans.
D'ailleurs visiblement ta page html est déjà une page php, donc tu mets le code pour les images dedans non ?
Développeur web depuis + de 20 ans

Eléphant du PHP | 123 Messages

01 déc. 2012, 17:09

Tu transformes ta page html en page php et tu mets le php et le html dedans.
ma page qui contient le html a l extension php
j ai tenté en faisant un include (fichier requete php) dans ma page qui contient le html mais ca marche pas

Avatar du membre
Mammouth du PHP | 1609 Messages

01 déc. 2012, 17:11

Si tu prends le code de AB et que tu le mets à l'endroit ou tu affiches les images en prenant soin de bien définir les variables comme il faut, tu ne devrais pas avoir de problème.
Développeur web depuis + de 20 ans