Bonjour
je desirerais ouvrir un repertoire crée, dans une fenetre prevu a cette effet. Le probleme etant ke c tout le site qui s'affiche dans le fenetre sur internet explorer en revanche cela fonctionne tres bien sur mozilla.Pkoi et que puis je faire?
// Le répertoire a été choisi
if ( isset($_POST['gal']) )
{
if ( strtoupper($_POST['gal']) == "new" )
{
if ( isset($_POST['repertoire']) )
{
if(is_dir($relative_files_path . $_POST['repertoire']))
{
echo "<form name=\"repertoire\" method=\"post\" action=\"upload.php?gal=new\">";
echo "Ce répertoire existe déjà.<br>Merci de choisir un nouveau nom de répertoire : <br>";
echo "<input type=\"text\" name=\"repertoire\"> <input type=\"submit\" name=\"submit\" value=\"Valider\">";
echo "<input type=\"hidden\" name=\"reponse_OK\">";
echo "</form>";
echo "<form name=\"repertoire\" method=\"post\" action=\"upload.php\">";
echo "<input type=\"hidden\" name=\"reponse_OK\">";
list_dir_to_upload($relative_files_path, "répertoires");
echo "<input type=\"submit\" name=\"submit\" value=\"Valider\">";
echo "</form>";
}
else
{
mkdir($relative_files_path . supprimer_accents($_POST['repertoire']));
afficher_upload($_POST['repertoire']);
}
}
}
else
{
afficher_upload($_POST['gal']);
}
}
// Choix du répertoire
else
{
echo "Choisissez le répertoire dans lequel vous voulez déposer vos photos, ou créez un nouveau répertoire à votre nom :<br><br>";
echo "<form name=\"repertoire\" method=\"post\" action=\"upload.php\">";
echo "<input type=\"hidden\" name=\"reponse_OK\">";
echo "<input type='hidden' name='gal' value='new'>";
echo "Nouveau répertoire : <input type=\"hidden\" name=\"reponse_OK\">";
echo "<input type=\"text\" name=\"repertoire\"> <input type=\"submit\" name=\"submit\" value=\"Créer un nouveau répertoire\">";
echo "</form>";
echo "<form name=\"repertoire\" method=\"post\" action=\"upload.php\">";
echo "<input type=\"hidden\" name=\"reponse_OK\">";
list_dir_to_upload($relative_files_path, "répertoires");
echo "<input type=\"submit\" name=\"submit\" value=\"Valider\">";
echo "</form>";
}
}
merci pour ce bout de script, il correspond bien à ce que je recherchais!
parcontre je n'arrive pas à voir comment je pourrait ensuite faire pour supprimer un où plusieurs des fichiers parmis la liste..
avec une case à cocher qui renseigne une fonction ulink mais bon... j'ai pas trop d'idée là...
si qqun à un tuyau c cool.
Merci encore pour la réponse.
bye
<?php function listing($repertoire){ $fichier = array(); if (is_dir($repertoire)){ $dir = opendir($repertoire); //ouvre le repertoire courant désigné par la variable while(false!==($file = readdir($dir))){ //on lit tout et on récupere tout les fichiers dans $file if(!in_array($file, array('.','..'))){ //on eleve le parent et le courant '. et ..' $page = $file; //sort l'extension du fichier $page = explode('.', $page); $nb = count($page); $nom_fichier = $page[0]; for ($i = 1; $i < $nb-1; $i++){ $nom_fichier .= '.'.$page[$i]; } if(isset($page[1])){ $ext_fichier = $page[$nb-1]; if(!is_file($file)) { $file = ''.$file; } } else { if(!is_file($file)) { $file = ''.$file; } //on rajoute un "/" devant les dossier pour qu'ils soient triés au début $ext_fichier = ''; } if($ext_fichier != 'php3' and $ext_fichier != 'db' ) { //utile pour exclure certains types de fichiers à ne pas lister array_push($fichier, $file); } } } } natcasesort($fichier); //la fonction natcasesort( ) est la fonction de tri standard sauf qu'elle ignore la casse // et la date du téléchargement foreach($fichier as $value) { echo ' <a href="'.rawurlencode($repertoire).'/'.rawurlencode(str_replace ('/', '', $value)).'" target=\"_blank\">'.$value.'</a> <br />'; } } //exemple d'utilisation : listing('admin/UPLOAD/emploi/upload'); //chemin du dossier ?>exp
il marché tres bien localement mais une fois que j'ai mis le site sur le serveur j'ai eu des probleme de lien voici donc ce qu'il me donne exp : The requested URL /admin/UPLOAD/emploi/upload/emploi du temsp.pdf was not found on this server.
puis j'ai adopter le tien et les liens marche trés bien apart que cette fois ci il affiche aussi le liens des page web.
As tu trouvez comment mettre le filtre pour les fichiers php?
Merci
il faut utiliser la fonction .
l'excellent code de notre ami marche à merveille
<?php $dir_nom = '.'; // dossier listé (pour lister le répertoir courant : $dir_nom = '.' --> ('point') $dir = opendir($dir_nom) or die('Erreur de listage : le répertoire n\'existe pas'); // on ouvre le contenu du dossier courant $fichier= array(); // on déclare le tableau contenant le nom des fichiers $dossier= array(); // on déclare le tableau contenant le nom des dossiers while($element = readdir($dir)) { if($element != '.' && $element != '..' && strrchr($element,'.') != '.php') { if (!is_dir($dir_nom.'/'.$element)) {$fichier[] = $element;} else {$dossier[] = $element;} } } closedir($dir); if(!empty($dossier)) { sort($dossier); // pour le tri croissant, rsort() pour le tri décroissant echo "Liste des dossiers accessibles dans '$dir_nom' : \n\n"; echo "\t\t<ul>\n"; foreach($dossier as $lien){ echo "\t\t\t<li><a href=\"$dir_nom/$lien \">$lien</a></li>\n"; } echo "\t\t</ul>"; } if(!empty($fichier)){ sort($fichier);// pour le tri croissant, rsort() pour le tri décroissant echo "\t\t<ul>\n"; foreach($fichier as $lien) { echo "\t\t\t<li><a href=\"$dir_nom/$lien \">$lien</a></li>\n"; } echo "\t\t</ul>"; } ?>Ca marche nickel, merci.
Mon répertoire à ouvrir ((dans : "listing" est rempli de répertoires.... une vrai arborescence. Comment gérer cette arborescence via le script et dans la même fenêtre. Comme l'explorateur windows, mais j'insiste, dans la même fenêtre de mon navigateur
Par exemple :
Je clic sur Dossier 2 cela m'ouvre l'arborescence du dossier 2
Je clic sur sous dossier 2 cela m'ouvre l'arborescence du sous dossier 2
Chaque arborescence s'ouvrant seule à l'écran avec la ligne : "Remonter d'un niveau" en haut pour se balader dans l'arborescence général du dossier de baser.
C'est compliqué ça !!!!
dossier racine
--------------sous dossier 1
--------------sous dossier 2
----------------------- sous sous dossier 2
--------------sous dossier 3
--------------sous dossier 4
.
Merci
voilà je sais que ce topic est vieux de 9 mois, mais voilà je ne comprend pas entièrement la script de gryzzly pour lister
le contenu d'un repertoire.
Pourquoi a t on besoin de tester si $exemple = '.' et '..'
voilà
merci d'avance pour vos reponses
Suis je clair ? Fais le test, ce sera bcp plus parlant !
En faite j'avais mal posé mal question et j'avais testé l'affichage sans enlever le . et le ..
Je voulais savoir à quoi ils servaient, en tout cas maintenant je sais grâce à toi que cela sert à se balader dans l'arborescence.
Merci pour tout
Tchao