Liste déroulante pour galerie |
|
| Voir le sujet précédent :: Voir le sujet suivant |
| Auteur |
Message |
webide frontpage mioche
 |
Liste déroulante pour galerie , Posté le: 21-04-2007 12:13 |
|
|
Bonjour,
J'ais mis en place un système sur mon site qui créait automatiquement des dossiers pour chaque membre à l'inscription.
Par la suite le membre peut créer son propre album photos et les photos sont envoyées dans son dossier.
Le problème réside dans le fait que je n'arrives pas à créer une liste déroulante regroupant tous les dossiers existants pour permettre aux autres membres de choisir quel album ils souhaitent regarder. Je n'utilises pas de bases de données.
Merci d'avance
webide |
|
|
webide frontpage mioche
 |
Liste déroulante pour galerie , Posté le: 24-04-2007 20:08 |
|
|
J'ais déjà bien avancé avec la liste déroulante car maintenant elle fonctionnes et me rediriges vers le dossier souhaité.
Voici d'ailleurs le code
| Code: |
<html>
<head>
<script>
function Lien() {
i = document.Choix.Liste.selectedIndex;
if (i == 0) return;
url = document.Choix.Liste.options[i].value;
parent.location.href = url;
}
</script>
<title></title>
</head>
<body>
<FORM NAME="Choix">
<SELECT NAME="Liste" onChange="Lien()">
<?php
if ($handle = opendir('upload/up/')) {
echo "Files:\n";
while (false !== ($file = readdir($handle))) {
echo'<option value="'.$file.'">'.$file.'</option>';
}
while ($file = readdir($handle)) {
echo "$file\n";
}
closedir($handle);
}
?>
</select>
</FORM> |
et pour le visionnage (car pour le moment il m'ouvres le dossier mais sans fichier pour afficher les photos ça bloques) j'ais pensé utiliser un fichier interactif pour les visionner
| Code: |
<html>
<head>
</head>
<body background="images/fd.gif">
<?php include("images.class.php"); ?>
<?php
$images = new images();
$images->repertoire = '$pseudo';
$images->nb_par_ligne = 3;
$images->afficher_liste();
?>
</body>
</html>
|
et en dernier voici le fichier images.class.php gérant l'affichage
| Code: |
<?php
class images {
var $repertoire;
var $nb_par_ligne;
function ajouter_image($image,$nom) {
if (is_dir($this->repertoire)) {
if (copy($image, $this->repertoire . "/" . $nom)) return true;
else return false;
} else return false;
}
function lister_repertoire() {
$liste = array();
if (is_dir($this->repertoire)) {
if ($pointeur = opendir($this->repertoire)) {
while (($fichier = readdir($pointeur)) !== false) {
if (!is_dir($this->repertoirte . "/" . $fichier)) {
$liste[] = $fichier;
}
}
closedir($pointeur);
return $liste;
} else return false;
} else return false;
}
function liste_select() {
$liste = $this->lister_repertoire();
for ($i = 0; $i < count($liste); $i++) {
echo " <option value=\"$this->repertoire/$liste[$i]\">$liste[$i]</option>\n";
}
}
function afficher_liste() {
$liste = $this->lister_repertoire();
echo "<table summary=\"table d'images\">\n";
for ($i = 0; $i < count($liste); $i++) {
$nom = explode(".", $liste[$i]);
$nom = str_replace("_", " ", $nom[0]);
$nom = str_replace("-", " ", $nom);
$nom = strtoupper(substr($nom, 0, 1)) . substr($nom, 1);
if (round($i/$this->nb_par_ligne) == ($i/$this->nb_par_ligne)) echo " <tr>\n";
echo " <td align=\"center\">" . $this->afficher_image($liste[$i]) . "<br></td>\n";
if (round(($i+1)/$this->nb_par_ligne) == (($i+1)/$this->nb_par_ligne) || ($i+2) > count($liste)) echo " </tr>\n";
}
echo "</table>\n";
}
function afficher_image($fichier) {
return "<img width=\"250px\" src=\"" . $this->repertoire . "/" . $fichier . "\" alt=\"" . $fichier . " - " . round((filesize($this->repertoire. "/" . $fichier)/1024), 2) . " ko\">";
}
}
?>
|
Le problème vient surtout de là
| Code: |
| echo'<option value="'.$file.'">'.$file.'</option>'; |
comment envoyer la personne et que la galerie s'ouvres avec les photos choisies |
|
|
|
 |
Accueil Forum
-> php |
Toutes les heures sont au format GMT + 1 Heure
|
| Page 1 sur 1 |
|
S'enregistrer
Profil
Se connecter pour vérifier ses messages privés
Rechercher
Membres
FAQ
Connexion
|