Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > Templates > phplib et phpBB
phplib et phpBB Forum d'entraide sur les moteurs de templates phplib et phpBB. Avant de poster -> FAQ gabarits phpBB2, Cours phpBB2 et Sources phpBB2
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/02/2007, 20h12   #1
Membre régulier
 
Étudiant
Inscription : juillet 2006
Messages : 147
Détails du profil
Informations personnelles :
Âge : 28
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : juillet 2006
Messages : 147
Points : 75
Points : 75
Envoyer un message via MSN à Henry9 Envoyer un message via Yahoo à Henry9
Par défaut [phplib] remplir d'un tableau

Bonjour, j'ai un tableau tout ce qu'il y a de plus normal
Code :
1
2
3
4
5
6
7
8
 
<table>
<tr>
<td>{picture}</td>
<td>{picture}</td>
<td>{picture}</td>
</tr>
<table>

Et puis d'un autre côté, j'ai une boucle php qui affiche toutes les images d'un répertoire.


Code :
1
2
3
4
5
6
7
8
9
10
$dir = opendir("image/");
$fichier = array();
while($nom = readdir($dir))
{
	if ($nom != '.' && $nom != '..' )
	{
		$fichier[] = $nom;
		echo '<img src="image/'.$nom.'"/><br>';
	}
}

Alors mon problème c'est que j'aimerai savoir comment faire lors du passage la première fois de la boucle, l'image va dans le premier <td></td> ensuite, lors du second passage dans la boucle, l'image apparaîsse dans le second <td></td> et ainsi de suite.... de manière avec à ce que les cases du tableau se remplisse au fur et à mesure que la boucle while renvoit des images.

Merci d'avance.
Henry9 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2007, 20h33   #2
Membre expérimenté
 
Avatar de jc_cornic
 
Inscription : octobre 2006
Messages : 624
Détails du profil
Informations personnelles :
Âge : 36

Informations forums :
Inscription : octobre 2006
Messages : 624
Points : 588
Points : 588
Envoyer un message via MSN à jc_cornic
Salut, tu peux faire par exemple:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 
<?php
$dir = opendir("image/");
$fichier = array();
 
//début du tableau
echo '<table><tr>';
 
while($nom = readdir($dir))
{
	if ($nom != '.' && $nom != '..' )
	{
		$fichier[] = $nom;
 
                          // ajoute une image dans un champ du tableau
		echo '<td><img src="image/'.$nom.' "></td>';
	}
}
 
// fin du tableau
echo '</tr></table>';
 
?>

Espérant t'avoir aidé...

++
JC
__________________
VELOMASTER, idée cadeau ? un jeu de plateau

Hummmmm, des donuts !!!!

Merci de penser à , et et aussi
jc_cornic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2007, 20h49   #3
Membre régulier
 
Étudiant
Inscription : juillet 2006
Messages : 147
Détails du profil
Informations personnelles :
Âge : 28
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : juillet 2006
Messages : 147
Points : 75
Points : 75
Envoyer un message via MSN à Henry9 Envoyer un message via Yahoo à Henry9
Dac, et si j'ai plus de 100 images, je peux pas tout mettre sur une ligne, est-il possible d'avoir seulement 4 image par lignes ?


[edit] en utilisant des boucles, je pense avoir trouvé mais ça ne marche pas:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
$i = 0;
$dir = opendir("image/");
$fichier = array();
echo '<table border="1">';
while($nom = readdir($dir))
{
	if($i==0)
	{
		echo '<tr>';
	}
	else //le probleme est ici, pourquoi on ne passe par par le else si $i n'est pas égale à 0 ?
	{
		echo '<td><img src="image/'.$nom.'"/></td>';
		$i++;
	}
 
 
	if($i==3)
	{
		echo '</tr>';
		$i=0;
	}
 
}

donc voilà, le problème se situe au niveau du else
Henry9 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2007, 21h05   #4
Membre régulier
 
Inscription : janvier 2007
Messages : 85
Détails du profil
Informations forums :
Inscription : janvier 2007
Messages : 85
Points : 80
Points : 80
Je crois qu'il cherche a faire un template !
Il te faut donc creer un fichier template pour une ligne de tableau

ex :
Code :
1
2
3
 <tr>
    <td>{image}</td>
 </tr>
et ensuite creer une boucle...

Il faut regarder dans les tutos PHP, si tu ne sais pas comment faire...

En plus tu ne nous donne pas le moteur de template que tu utilise.
__________________
"Soyez les changements que vous aimeriez voir dans le monde" Mahatma Gandhi
p.legal est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2007, 21h08   #5
Membre régulier
 
Étudiant
Inscription : juillet 2006
Messages : 147
Détails du profil
Informations personnelles :
Âge : 28
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : juillet 2006
Messages : 147
Points : 75
Points : 75
Envoyer un message via MSN à Henry9 Envoyer un message via Yahoo à Henry9
le moteur de template est phplib, c'est marqué en titre
Henry9 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2007, 21h18   #6
Membre Expert
 
Avatar de eric.pommereau
 
Homme ERIC POMMEREAU
Ingénieur intégration
Inscription : décembre 2004
Messages : 683
Détails du profil
Informations personnelles :
Nom : Homme ERIC POMMEREAU
Âge : 38
Localisation : France

Informations professionnelles :
Activité : Ingénieur intégration
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : décembre 2004
Messages : 683
Points : 1 294
Points : 1 294
Bonjour,

Voici une façon de s'en sortir (ici avec smarty).

Code :
1
2
3
4
5
6
7
8
{foreach name=liste_imgs item=image from=$imgs_prop}
	<a href="affichage-image.php?image={$image.CHEMIN_GRANDE}">
		<img src="{$image.CHEMIN_MINIATURE}" {$image.TAILLE_HTML_MIN} alt="{$image.NOM_IMAGE}">
	</a>
	{if ($smarty.foreach.liste_imgs.iteration % 4) == 0}
		<br>
	{/if}
{/foreach}
Cet exemple vient de l'article suivant: http://pbnaigeon.developpez.com/tuto...avec-template/

Avec la phplib tu dois pouvoir obtenir un comportement équivalent ...

J'éspère avoir répondu à ta question
eric.pommereau est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/02/2007, 12h53   #7
Membre à l'essai
 
Inscription : décembre 2005
Messages : 22
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : décembre 2005
Messages : 22
Points : 23
Points : 23
Pour la phplib, je te conseille de lire ce tutoriel. Edit: et même ça.

Dans les grandes lignes :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
$sql = new mysql;
$template = new template(...);
 
$template->set_file(le_fichier);
$template->set_block(le_bloc);
$sql->query(...);
while ($table_xxx = $sql->fetch())
{
    $template->set_var(...);
    $template->parse(le_bloc);
}
$template->parse(le_fichier);
Hansolo est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h38.


 
 
 
 
Partenaires

Hébergement Web