Création automatique nouvelles pages

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Création automatique nouvelles pages

Re: Création automatique nouvelles pages

par TRUNCKS » 26 janv. 2011, 23:26

C'est mon gros soucis justement. Je débute à peine et je suis parti dans tous les sens.
J'ai vraiment beaucoup de mal.

Ce serait aimable de me montrer où et comment placer les bouts de code qu'il me manque. :)

Re: Création automatique nouvelles pages

par moogli » 26 janv. 2011, 23:14

heu t'a essayé mon code ?

a tu compris la différence entre ce que j'ai mis et le tiens ?

une boucle for ce n'est pas figé a un départ à 0 ;) faut adapter comme je l'ai fait !

@+

Re: Création automatique nouvelles pages

par TRUNCKS » 26 janv. 2011, 16:35

J'ai un peu fouillé, mais je n'y arrive toujours pas.

Je dois certainement avoir oublié quelque chose...

Le décompte se fait bien, tout les dix images il y a création d'une nouvelle page, mais toutes les images restent quand même sur la même page.

Vous pouvez m'aider, je craque lol

Code : Tout sélectionner

<div id="galerie"> <?php $dos = "web/images/mini"; $dir = opendir($dos); while($file = readdir($dir)){ $allow_ext = array("jpg",'png','gif'); $ext = strtolower(substr($file,-3)); if (in_array($ext,$allow_ext)){ ?> <div id="divIGM"> <table id="tblThumbsLayout" cellpadding="10" cellspacing="5" align="center";> <tr> <td id='topCell' colspan='4'> </td> </tr> <tr> <td class='tdImg'> <a href= "web/images/<?php echo $file; ?>" rel='lightbox[id0]'> <img class='eImage' style="border:none" src="web/images/mini/<?php echo $file; ?>"></a> <p align=center><font class='tdTitle'><?php echo $file; ?></font></p> </td> </tr> </table> </div> <?php } } ?> <?php $NombreImagesParPages = 10; // Nombre d'images par page // On compte le nombre d'images $files = glob("web/images/mini/*.*"); $TotalDesImages = count($files); // On calcule le nombre de pages à créer $NombreDePages = ceil($TotalDesImages / $NombreImagesParPages); // Puis on fait une boucle pour écrire les liens vers chacune des pages echo 'Page : '; for ($i = 1 ; $i <= $NombreDePages ; $i++) { echo '<a href="realisations.php?page=' . $i . '">' . $i . '</a> '; } ?>

Re: Création automatique nouvelles pages

par moogli » 18 janv. 2011, 20:20

ok,

alors il va falloir ruser un peut :
- il faut d'abord tout stocker dans un tableaux (php) afin de pouvoir le trier correctement et ensuite pourvoir appliquer la pagination.

avec ton code
<?php
$dos = 'web/images/mini/';
$dir = opendir($dos);
$fichiers = array();
while($file = readdir($dir)){
	$allow_ext = array("jpg",'png','gif');
	$ext = strtolower(substr($file,-3));
	if (in_array($ext,$allow_ext)){
		$fichiers[] = $file;
	}
}
sort($file,SORT_STRING);
?>
à partir de la tu peut afficher le nombre voulu d'image comme indiquer avec le tuto plus huat. La différence est que tu parcours ton tableau avec une boucle for et que tu initialise le début et la fin de la boucle en fonction de la page
par exemple
<?php
$nbimgparpage = 5;
if (isset($_GET['page'])) {
$debut = $nbimgparpage * $_GET['page'] -1; // parce que l'on commence à 0
if ($debut <= $nbimgparpage) $debut = 0;
}
else {
$debut = 0;
}
// fin de la boucle
$fin = $debut + nbimgparpage;

// affichage
for ($debut ; $debut < $fin ; $debut++) {
// affichage de l'image
}
?>
voila pour le principe

@+

Re: Création automatique nouvelles pages

par TRUNCKS » 18 janv. 2011, 18:48

Voici ce dont je me sers pour afficher mes images uplodés.

Code : Tout sélectionner

<?php $dos = "web/images/mini"; $dir = opendir($dos); while($file = readdir($dir)){ $allow_ext = array("jpg",'png','gif'); $ext = strtolower(substr($file,-3)); if (in_array($ext,$allow_ext)){ ?> <div id="divIGM"> <table id="tblThumbsLayout" cellpadding="10" cellspacing="5" align="center";> <tr> <td id='topCell' colspan='4'> </td> </tr> <tr> <td class='tdImg'> <a href= "web/images/<?php echo $file; ?>" rel='lightbox[id0]'> <img class='eImage' style="border:none" src="web/images/mini/<?php echo $file; ?>"></a> <p align=center><font class='tdTitle'><?php echo $file; ?></font></p> </td> </tr> </table> </div> <?php } } ?> </div>

Re: Création automatique nouvelles pages

par TRUNCKS » 18 janv. 2011, 18:46

Je comprend bien mais là je ne sais pas du tout comment m'y prendre.

Je débute vraiment dans le langage.

Re: Création automatique nouvelles pages

par xTG » 18 janv. 2011, 18:19

Cela reste sur le même principe, c'est juste que tu n'as pas une requête qui te forme un tableau mais des fonctions pour récupérer les images qui te forme ton tableau source.

Re: Création automatique nouvelles pages

par TRUNCKS » 18 janv. 2011, 17:52

Je n'ai pas utilisé SQL pour ma galerie, je peux quand même de servir de l'exemple ?

Re: Création automatique nouvelles pages

par moogli » 18 janv. 2011, 17:23

salut,


un exemple pour faire un affichage page par page


@+

Création automatique nouvelles pages

par TRUNCKS » 18 janv. 2011, 16:56

Bonjour à vous,

J'ai une petite question, j'ai une galerie dynamique que je remplie avec un upload en php.

Ma question est simple, au bout d'un certain nombre d'images, ces dernières sont nombreuses et il faut scroller pas mal pour arriver au bout.

Comment puis je faire pour que par exemple, toutes les 20 images, il y est création d'une deuxième page et ainsi de suite ( avec possibilité de revenir aux autres bien sur )

Merci à vous