izbing Posté 30 Novembre 2004 Posté 30 Novembre 2004 Bonjours. Voila mon site : http://izbing2.tonsite.biz/wall/ J'ai 2 petite problème. Voici le code source de la page que j'aimerai modifié : <?include("sys/systemfiles.php");if(empty($page)){ $page = 1; }?><html><head><title><? echo $title; ?></title><Style TYPE="text/css">.link { font-family: arial; color: <? echo $colorLink; ?>; text-decoration: none }.link:hover { font-family: arial; color: <? echo $colorLinkHover; ?>; text-decoration: underline }</Style></head><body text="#006699" link="<? echo "$colorLink"; ?>" vlink="<? echo $colorLink; ?>" alink="<? echo $colorLink; ?>" bgcolor="<? echo $colorBack; ?>"><table width="100%" border="0"><tr><td bgcolor="#CCCCCC"><div align="center"><span class="Style1">W A L L P A P E <span class="Style2">R</span> - Z I N <span class="Style2">G</span></span><br><img src="ligne.gif" width="400" height="1"><br><a href="../index.php">Retour au site</a></div></td></tr></table><div align="center"> <table border="0" width="780" cellpadding="0" cellspacing="0" height="100%"> <tr> <td width="3" rowspan="3" bgcolor="#C0C0C0"></td> </tr> <tr> <td width="779" valign="top"> <table border="0" cellpadding="5" cellspacing="0" width="100%"> <tr> <td> <div align="left"> <font color="#333333" face="Arial"><b><a href="?" class="link">home</a><? echo getRepLink($dir); ?></b></font><br><?$handle = opendir("home$dir");while (false !== ($file = readdir($handle))) { if ($file != "." && $file != ".." && $file != "img" && $file != "sys" && is_dir("./$picRep$dir/$file")) {?> <font color="#333333" face="Arial"> <a href="?dir=<? echo "$dir/$file"; ?>" class="link"><? echo $file; ?></a></font><br><? }}closedir($handle);?> </div> </td> </tr> </table> <table border="0" cellpadding="5" cellspacing="0" width="100%"> <tr> <td> <font face="Arial"> <? if(file_exists("./$picRep$dir/text.txt")) { include("./$picRep$dir/text.txt"); } ?> </font> </td> </tr> </table> <table border="0" cellpadding="5" cellspacing="0" width="100%"> <tr> <td> <font face="arial"><?$handle = opendir("$picRep$dir");while (false !== ($file = readdir($handle))) { if ($file != "." && $file != ".." && $file != "img" && $file != "sys" && isImg($file)) { $imgList[] = $file; }}closedir($handle);$nbimg = count($imgList);$seek = ($page - 1)*$nbImgPerPg;$i = 0;if ($nbimg - $seek > $nbImgPerPg){ $nbimg = $nbImgPerPg; $nextPage = 1; }else{ $nbimg = $nbimg - $seek; }$nextPageNb = $page + 1;$prevPageNb = $page - 1;if ($page > 1){ $prevPage = 1; }if ($thumbGen) { $genFile = "thumbgen.php?fichier="; }while ($nbimg > $i) { $imgStat1 = $i+$seek; $imgStat2 = $i+$seek+1; $imgStat3 = $i+$seek+2; $imgStat4 = $i+$seek+3; if($nbimg-$i != 1){ echo " <table width=\"50%\" align=\"center\"> <tr> <td width=\"25%\"> <center><a href=\"img.php?img=./$picRep$dir/$imgList[$imgStat1]\" target=\"_blank\" width=\"100\"><img src=\"$genFile./$picRep$dir/$imgList[$imgStat1]\" border=\"0\" height=\"100\"></a></center> </td> <td width=\"25%\"> <center><a href=\"img.php?img=./$picRep$dir/$imgList[$imgStat2]\" target=\"_blank\" width=\"100\"><img src=\"$genFile./$picRep$dir/$imgList[$imgStat2]\" border=\"0\" height=\"100\"></a></center> </td> <td width=\"25%\"> <center><a href=\"img.php?img=./$picRep$dir/$imgList[$imgStat3]\" target=\"_blank\" width=\"100\"><img src=\"$genFile./$picRep$dir/$imgList[$imgStat3]\" border=\"0\" height=\"100\"></a></center> </td> <td width=\"25%\"> <center><a href=\"img.php?img=./$picRep$dir/$imgList[$imgStat4]\" target=\"_blank\" width=\"100\"><img src=\"$genFile./$picRep$dir/$imgList[$imgStat4]\" border=\"0\" height=\"100\"></a></center> </td> </tr> <tr colspan=\"4\"> <td height=\"10\"> </td> </tr> </table> "; }else{ echo " <table width=\"50%\" align=\"center\"> <tr> <td width=\"50%\"> <center><a href=\"img.php?img=./$picRep$dir/$imgList[$imgStat1]\" target=\"_blank\" width=\"100\"><img src=\"$genFile./$picRep$dir/$imgList[$imgStat1]\" border=\"0\" height=\"100\"></a></center> </td> <td width=\"50%\"> <center></center> </td> </tr> <tr colspan=\"2\"> <td height=\"10\"> </td> </tr> </table> "; } $i = $i + 4;}echo "<br>";if($prevPage == 1){ echo "<a href=\"?dir=$dir&page=$prevPageNb\" class=\"link\">Précédent</a>"; }if($prevPage == 1 && $nextPage == 1){ echo " - "; }if($nextPage == 1){ echo "<a href=\"?dir=$dir&page=$nextPageNb\" class=\"link\">Suivant</a>"; }?> </font> </td> </tr> </table> </td> </tr> </table></div></body></html> Voila. Le Premier Probleme est que j'aimerai que les dossier soit dans l'ordre alphabétique. Le second probleme est que le script est prévut pour afficher les images dans 2 colonnes mais je l'ai modifier pour les mettres sur 4 colonnes. Tout marche sauf quand il y a 2 ou 3 images selement. Quand il y a 2 images dans le repertoire, il affiche 2 autres images, mais qui n'existe pas (liens mort) pareil quand il y a 3 images sauf qu'il en met qu'une. Si vous avez besoin d'information complémentaire dite le moi GRAND MERCI pour celui (ou celle) qui prendra la peine de m'aider, c'est très généreux de sa par
Anonymus Posté 1 Décembre 2004 Posté 1 Décembre 2004 Bonjour, pour avoir la liste des répertoires dans l'ordre alphabétique, il faut les mettre dans un tableau (avec array_push par exemple) puis trier ce tableau (avec sort ). Puis les afficher. Pour les liens morts des images, tu as dû résoudre le problème, parce que je n'en vois pas sur la page en question. Anonymus.
MarvinLeRouge Posté 1 Décembre 2004 Posté 1 Décembre 2004 Salut, Pour tes liens morts, tu peux résoudre le problème en : 1) affichant les différentes cases contenant les photos dans une boucle (ca te donnera un code plus lisible et avec moins de redondance) 2) en testant l'existence du fichier à chaque fois avant d'écrire le lien => 1 fichier = 1 case de tableau avec 1 lien, pas de fichier = 1case de tableau sans lien dedans NB : Si tu as beaucoup de fichiers, tester l'existence de tous peut te prendre des ressources pour rien, DONC, si tu es sûr que les fichiers en question existent, traite la première ligne de 4 photos à part. Tu fais des tests d'existence pour ces fichiers là et tu oublies pour les autres.
izbing Posté 1 Décembre 2004 Auteur Posté 1 Décembre 2004 Merci beaucoup. Effectivement pour les liens mort c'est résolut Mais je vais essayer pour le tableau. Encore merci
petit-ourson Posté 1 Décembre 2004 Posté 1 Décembre 2004 tu as la fonction glob également que je viens de découvrir pour lister des répertoires. Ca construit un tableau que l'on peut facilement trier.
izbing Posté 1 Décembre 2004 Auteur Posté 1 Décembre 2004 Voici mon nouveau code pour afficher les dossier : $dir = split("/",$dir); $nb = count($dir); $i = 1; $linkString = ""; $tempDir = ""; while($nb > $i){ if($i == $nb - 1){ $linkString .= "/$dir[$i]"; }else{ $linkString .= "/<a href=\"?dir=$tempDir/$dir[$i]\" class=\"link\">$dir[$i]</a>"; $tempDir .= "/$dir[$i]"; } $i++; } return $linkString;} Malheureusement je ne m'en sors pas avec la fontion sort. Quelqu'un pour m'expliquer comment l'implémenté ? Je suis désolé mais je suis nouveau dans le monde du php
maximettb Posté 2 Décembre 2004 Posté 2 Décembre 2004 Malheureusement je ne m'en sors pas avec la fontion sort.Quelqu'un pour m'expliquer comment l'implémenté ? Je suis désolé mais je suis nouveau dans le monde du php <{POST_SNAPBACK}> Rien de plus simple! sort($ton_tableau): et le tri se fait directement dans le tableau, sans retour. Plus d'infos sur le manuel PHP : Fonction sort
izbing Posté 2 Décembre 2004 Auteur Posté 2 Décembre 2004 Ah on peux attribué un tableau a une variable ?
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant