Jump to content
Sign in to follow this  
izbing

2 Problèmes

Rate this topic

Recommended Posts

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 :)

Share this post


Link to post
Share on other sites

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.

Share this post


Link to post
Share on other sites

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. ;)

Share this post


Link to post
Share on other sites

Merci beaucoup.

Effectivement pour les liens mort c'est résolut :D

Mais je vais essayer pour le tableau.

Encore merci :D

Share this post


Link to post
Share on other sites

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.

Share this post


Link to post
Share on other sites

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 :(

Share this post


Link to post
Share on other sites
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

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...