Problème de galerie photo avec des DIV

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 : Problème de galerie photo avec des DIV

par juju53 » 29 août 2008, 23:29

Donc voilà je peux vous annoncer que le script est totalement opérationnel car éffectivement j'ai réussi à trouver le problème du fait qu'il manquait une image et cela était du à cette partie du code
// On défini le nombre max 
$max = $compteur-1;
le -1 était en trop.
Pour de répondre sadeq le script de comptage est long car j'ai eu du mal a le réaliser mais je réfléchirai à une diminution de cette partie du script.
Merci à tous de votre aide

par sadeq » 29 août 2008, 12:52

Pour ce dernier problème vérifie les formules de comptage que tu applique à ta variable $cpt et notamment là où tu calcule la fin de ce compteur.

Personnellement, je trouve que ton algorithme de comptage est compliqué. Essaye de le simplifier en diminuant le nombre de variables et de conditions utilisées.

par juju53 » 29 août 2008, 11:01

Voila j'ai enfin résolu mon problème il y avait un problème de variable lors de l'affichage des pages. Merci à tous pour votre aide .
Cependant j'ai autre problème c'est que dans mon dossier image par exemple si j'ai 4 images il m'en affiche que 3 alors si vous avez des indications sur ce problème ?

par sadeq » 28 août 2008, 12:57

Revérifie ton code car tu as probablement toujours ce morceau de code erroné qui traine et que tu nous a donné au début de ton post :
// On affiche le lien pour la page suivante 
if ($page + $nbr_page < $max) 
{ 
    echo "&nbsp;<td><a href=\"".$PHP_SELF."?page=".($page+$nbr_page)."\" dir=\"".$dir."\">>></a></td>\n"; 
}  
Car ce code envoi effectivement un nombre dans le paramètre page, ce qui explique l'erreur que tu reçois.

par juju53 » 28 août 2008, 12:43

j'ai essayé de mettre le \ aprés le href= mais j'ai toujours
Warning: Failed opening '1.php' for inclusion (include_path='.;C:\Program Files\EasyPHP\php\pear\') in c:\program files\easyphp\www\fa\index.php on line 98
j'ai beau cherché mais je ne trouve pas la solution

par mere-teresa » 28 août 2008, 10:27

je ne suis pas le seul à faire alors soit tu arrête de m'embeter avec tes messages ou soit tu fermes tout les topics qui font la même chose ke moi
Mieux vaut prévenir que guérir !
Je vois que tu ne veux pas qu'on te fasse tout, et que tu es prêt à expérimenter, cela me fait bien plaisir. Je ne pouvais pas le savoir avant que tu ne répondes.

par sadeq » 28 août 2008, 09:17

Ne manquerait-il pas un \ pour un guillemet interne à la chaine après href= ?

Correction:
// On affiche le lien pour la page suivante 
if ($page + $nbr_page < $max) 
{ 
    echo "<td><a href=\"index.php?page=page/administration/photo/supphoto&red=".($pager-$nbr_page)."\" dir=\"".$dir."\"><<</a></td>&nbsp;\n";
} 

par juju53 » 28 août 2008, 00:01

Bon voila j'ai trouvé une partie de mon problème aprés quelques test effectué et voila mon problème :
- Quand j'affiche la première image tout va bien pas de souci, mais le hic c'est lorsque je passe à l'image suivante en cliquant sur suivant, il me met un message d'erreur comme quoi 1.php n'existe pas, normal car la page effectivement n'existe pas.
- Mais le souci c'est que je ne vois pas comment résoudre se problème et donc le souci est dans cette partie du code :
<td><a href=\"index.php?page=page/administration/photo/supphoto&red=".($pager-$nbr_page)."\" dir=\"".$dir."\"><<</a></td>&nbsp;\n";
A chaque fois que je change de page je passe obligatoirement par index.php qui contient le code suivant :
if(isset($_GET['page'])){
include($_GET['page'].'.php');
}
puis retourne sur la page.

Donc en fait il faut que je trouve la solution pour que le code
a href=\"index.php?page=page/administration/photo/supphoto
et le code :
red=".($pager-$nbr_page)
aille ensemble de façon a pouvoir changer de page en passant par la page index.php


merci de m'aider

par sadeq » 27 août 2008, 21:37

A mon avis, tu dois séparer le code qui sert pour ta galerie du reste du code pour mieux voir les erreurs. Même si on voit déjà quelques unes dans ton script. Tu pourra plutard inclure le script séparé par un include() à l'emplacement où tu veux afficher son résultat dans ta page principale.

C'est mieux de découper un p'tit peu en modules pour faire des tests unitaires séparés.

par zeus » 27 août 2008, 19:55

je ne suis pas le seul à faire alors soit tu arrête de m'embeter avec tes messages ou soit tu fermes tout les topics qui font la même chose ke moi
C'est pas la meilleure chose que tu puisses faire de prendre la modération à rebrousse-poil

Les messages de modérations sont là lorsqu'un membre ne respectent pas les règlements du site. Donc, soit tu les lis, tu les comprends, soit tu risques d'être modéré souvent.

En 2 thread, tu as réussi à avoir 3 modérations, c'est surement signe qu'il faudrait que tu lises les réglements.

En ce qui concerne ton soucis, "ça ne marche pas" ne nous aide pas.
Est-ce que tu peux nous détailler plus précisement ce que tu entends par là ?

par Berzemus » 27 août 2008, 19:37

Moi, ma pelouse, il faut la tondre. Voilà.

Merci de bien vouloir le faire.

par juju53 » 27 août 2008, 17:07

je ne suis pas le seul à faire alors soit tu arrête de m'embeter avec tes messages ou soit tu fermes tout les topics qui font la même chose ke moi

par mere-teresa » 27 août 2008, 16:44

Modération :
PHPFrance n'est pas un site de distribution de scripts gratuits,
ni de débuggage de scripts téléchargés et utilisés sans compréhension.

Merci de prendre le temps de lire les règlements.

Problème de galerie photo avec des DIV

par juju53 » 27 août 2008, 15:48

Bonjour voila je vous explique mon problème. J'ai crée un site de sport en div et j'ai décidé de mettre une galerie photo, cependant mon script ne fonctionne pas, mais par contre il fonctionne lorsque le site est dans un site fait avec des frameset. Vous pouvez regarder le site ici http://fabasket.free.fr/
Donc voila mon script
<?php 



// Configuration 
$nbr_page = 1; 
// Nombre d'affichage par page 

$nmr_page = 100; 
// Nombre de Numéro par page 


$folder = "page/administration/photo/galerie"; 
//--->>> C'EST ICI QUE L'ON MODIFIE LE NOM DU DOSSIER OU L'ON PLACE LES IMAGES <<<---/// 


$dossier = opendir($folder); 

while ($Fichier = readdir($dossier)) 
{ 
    if ($Fichier != "." && $Fichier != "..") 
    { 
        if (is_file($folder."/".$Fichier)) 
        { 
            // si c'est une extension d'image 
            $ext = strtolower(substr($Fichier, strrpos($Fichier, '.') + 1)); 
             
            if($ext=="jpg"||$ext=="jpeg"||$ext=="gif"||$ext=="bmp"||$ext=="png") 
            { 
                // On stocke les résultats dans un array() 
                $manuel[] = $Fichier; 
                $compteur++; 
            } 
        } 
    } 
} 

// Fermeture du dossier 
closedir($dossier); 

if (empty($_GET['page'])) 
{ 
    $cpt = 0; 
} 
else 
{ 
    $cpt = $_GET['page']; 
} 

$max_page = $cpt+$nbr_page; 
$page = $_GET['page']; 

// On défini le nombre max 
$max = $compteur-1; 

// On affiche le contenu de la page demandée 
while ($cpt < $max_page) 
{ 

    $fonction = $manuel[$cpt]; 
$total=$folder.'/'.$fonction;
    echo "<table align='center'><tr><img src='".$total."' width='400' height='300' border='no'></tr></table>"; 
    $cpt++; 
} 
echo '<table align="center"><tr>';
// On affiche le lien pour la page précedente 
if ($page >= $nbr_page) 
{ 
    echo "<td><a href=\"".$PHP_SELF."?page=".($page-$nbr_page)."\" dir=\"".$dir."\"><<</a></td>&nbsp;\n"; 
} 

// On calcule le numéro des pages 
if (!isset($page)) 
{ 
    $page = 0; 
} 

if ($page >= ($nmr_page * $nbr_page)) 
{ 
    $cpt_fin = $nmr_page / $nbr_page + 1; 
    $cpt_deb = $cpt_fin - $nmr_page + 1; 
} 
else 
{ 
    $cpt_deb = 1; 
    $cpt_fin = (int)($max / $nbr_page); 
     
    if (($max % $nbr_page) != 0) 
    { 
        $cpt_fin++; 
    } 
     
    if ($cpt_fin > $nmr_page) 
    { 
        $cpt_fin = $nmr_page; 
    } 
     
    for ($cpt = $cpt_deb; $cpt <= $cpt_fin; $cpt++) 
    { 
        if ($cpt == ($page / $nbr_page) + 1) 
        { 
            echo "<td><span style=\"".$style."; font-weight: bold\">&nbsp;".$cpt."&nbsp;</span></td>\n"; 
        } 
        else 
        { 
            echo "&nbsp;<td><a href=\"".$PHP_SELF."?page=".(($cpt-1)*$nbr_page)."\" dir=\"".$dir."\">".$cpt."</a></td>&nbsp;\n"; 
        } 
    } 
} 
     
// On affiche le lien pour la page suivante 
if ($page + $nbr_page < $max) 
{ 
    echo "&nbsp;<td><a href=\"".$PHP_SELF."?page=".($page+$nbr_page)."\" dir=\"".$dir."\">>></a></td>\n"; 
} 

echo '</tr></table>';
?> 
Merci de bien vouloir m'aider