IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Trier une racine FTP en PHP


Sujet :

Langage PHP

  1. #1
    Membre du Club Avatar de Casio
    Homme Profil pro
    Historien numérique
    Inscrit en
    Novembre 2005
    Messages
    312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Historien numérique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 312
    Points : 59
    Points
    59
    Par défaut Trier une racine FTP en PHP
    Salutations,

    Actuellement, j'utilise le code suivant pour lister l'arborescence d'un serveur FTP privé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    <?php
    $ftpip = "AdresseIPduServeur";
    $user = "login";
    $pass = "password";
    $compte = "NomduCompte";
    $port = "21";
    // Mise en place d'une connexion basique
    $connexion = ftp_connect($ftpip, $port, 2);
    // Identification avec un nom d'utilisateur et un mot de passe
    // $login = ftp_login($connexion, $user, $pass);
    // Authentification & Vérification FTP
    if (@ftp_login($connexion, $user, $pass)) {
    	echo "<div align='right' class='details'>Connecté\n</div>";
    	// Mise en place d'un Timeout (si connection UP)
    	// ftp_set_option($connexion, FTP_TIMEOUT_SEC, 5);
    	// $timeout = ftp_get_option($connexion, FTP_TIMEOUT_SEC);
    	// Activation du mode passif
    	ftp_pasv($connexion, true);
    	// Listing du serveur FTP avec lien
    	$file_list = ftp_nlist($connexion, '/'.$compte.'/');
    	// $file_list = ftp_rawlist($connexion, '/drivers/');
    	foreach ($file_list as $file)
    		if ($file != "." && $file != ".." && $file != ".DS_Store" && $file != "/Drivers/HEADER.html" && $file != "/Drivers/Network Trash Folder" && $file != "/Drivers/listing.php" && $file != "/Drivers/Temporary Items" && $file != ".htaccess") {
    		{
    			// echo '<a href="http://'.$ftpip.'/'.$compte.'/'.$file.'/" target="_blank">'.$file.'</a><br>';
    			echo '<a href="#" onClick="window.open(\'ftp://'.$user.':'.$pass.'@'.$ftpip.'/'.$file.'/\')">'.$file.'</strong></a><br />';
    		}
    }
    // Fermeture de la connexion
    	ftp_close($connexion);
    	// Affichage si pas de connexion possible
    } else {
    	echo "<div align='center'><span class='rouge'>Connexion impossible au serveur privé de l'association <strong>WDA</strong>.<br /><br />Veuillez nous en excuser et réessayez SVP ultérieurement.\n</span></div><br />";
    }
    ?>
    Néanmoins, le rendu, bien que propre, liste le contenu du FTP dans un ordre... Particulier... Si bien qu'il faut souvent chercher le sous-dossier pendant assez longtemps avant de le trouver.

    Comment pourrais-je, en utilisant ce code, trier le rendu alphabétiquement, par ex. ?

    A vous lire,
    Digital self-made Man - OnLine since 1993.
    https://wda-fr.org - https://mathieu.charreyre.net

  2. #2
    Expert confirmé Avatar de papajoker
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    2 105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2 105
    Points : 4 455
    Points
    4 455
    Par défaut
    Bonjour,
    il faut dans la boucle enregistrer les fichiers dans un tableau
    Après la fermeture du ftp,
    trier la tableau par valeur
    et enfin, boucler sur ce tableau pour affichage

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    foreach($files as $file)
    echo '<a href="#" onClick="window.open(\'ftp://'.$user.':'.$pass.'@'.$ftpip.'/'.$file.'/\')">'.$file.'</strong></a><br />';
    }
    $moi= ( !== ) ? : ;

Discussions similaires

  1. Lancer un script PHP à partir d'une connexion FTP
    Par fveto dans le forum Composants VCL
    Réponses: 1
    Dernier message: 09/06/2015, 20h13
  2. créer une user ftp en php
    Par asus02 dans le forum Langage
    Réponses: 13
    Dernier message: 09/03/2012, 09h26
  3. Comment trier une DBGRID en cliquant sur une colonne
    Par sessime dans le forum Bases de données
    Réponses: 8
    Dernier message: 09/10/2004, 16h18
  4. [langage] Trier une hastable
    Par Gogoye dans le forum Langage
    Réponses: 11
    Dernier message: 03/08/2004, 16h43
  5. Créer une vue pour trier une requete UNION ?
    Par Etienne Bar dans le forum SQL
    Réponses: 3
    Dernier message: 03/01/2003, 20h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo