Publier le contenu d'un dossier depuis un serveur FTP - Windows & Software
Marsh Posté le 29-11-2002 à 23:15:41
blueteen a écrit a écrit : ton hébergeur supporte php ? |
oui je suppose, il s'agit de Skynet...
Marsh Posté le 29-11-2002 à 23:17:11
dans ce cas, crée une page index que tu places avec tes fichiers dans ton dossier
le seul truc à faire, c'est de mettre le nom du dossier dans la source ci-dessous.
c'est pas super optimisé, c'est moi qui l'ai fait
Code :
|
Marsh Posté le 29-11-2002 à 23:22:31
OK merci bcp pour ton aide, je suis en train d'uploader, je te poset une réponse ici dans 5 min avec le résultat
Marsh Posté le 29-11-2002 à 23:26:20
Oops,... a ton avis, qu'est ce qui ne fonctionne pas ?
mon folder s'appelle MCSE et est localisé à http://thomas.basm.be/MCSE/ , j'ai changé dans ta page la valeur suivante $dir="MCSE";// mais manifestement, il y a qqch qui manque ... http://thomas.basm.be/MCSE/listing.htm
Marsh Posté le 29-11-2002 à 23:27:09
renomme ta page en .php
t'as mis que 4 minutes pour ta question
Marsh Posté le 29-11-2002 à 23:29:19
au fait, ton hébergeur, c'est pas skynet, c'est : http://www.basm.be/index2.php?lang=fr
ne pas confondre avec le fournisseur d'accès
et ton hébergeur donc, propose bien le php
ça devrait donc aller
@+
Marsh Posté le 29-11-2002 à 23:30:24
sorry pour les erreurs de débutant, mais je n'ai jamais utilisé PHP, je suis un bon vieux HTMLeur ...
Bref, après avoir renommé ma page en .php, voici le résultat : http://thomas.basm.be/MCSE/listing.php il y a toujours un truc qui cloche ...
Marsh Posté le 29-11-2002 à 23:32:37
montre ce que tu as collé dans ton fichier
j'ai l'impression qu'il manque le début
essaie aussi de la renommer en .php3
Marsh Posté le 29-11-2002 à 23:34:53
Bon voilà c'est renommé en .php3
Pour ton info, il y a 3 fichiers, un gif, un txt et un jpg
La page :
HTML>
<HEAD>
<TITLE> Listing </TITLE> <!-- Titre de la fenêtre -->
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<?
$dir="MCSE";// Répertoire dont le contenu sera listé
$dossier=opendir($dir);// Ouverture du répertoire
echo "<U><B>Contenu du répertoire : ".$dir."</B></U><BR><BR>";
echo "<TABLE border=0>\n";// Création d'un tableau pour améliorer la lisibilité
echo "<TR><TD ALIGN=CENTER>Type</TD><TD>Noms</TD><TD>Taille</TD><TD ALIGN=CENTER>Date</TD></TR>";//création des titres de colonnes
while($fichier=readdir($dossier))//parcours du répertoire
{
$type = is_dir("$dir/$fichier" );//est-ce un fichier ou un répertoire ?
$taille = filesize("$dir/$fichier" );// Récupération de la taille du fichier (ou du répertoire)
$date = filemtime("$dir/$fichier" );// Récupération de date de dernière modification du fichier (ou du répertoire)
$aff_date = date("d/m/Y", $date);// Mise en forme de la date : 01/01/2001
if ($type)
{
$type_res = "D";
}
else
{
$type_res = "F";
}
// On peut utiliser cette façon aussi pour tester s'il s'agit d'un fichier ou d'un répertoire
// Tout est fait en une seule ligne !
// is_dir("$dir/$fichier" ) ? $type_res = "D" : $type_res = "F";
// Contrôle de la taille du fichier afin d'afficher les valeurs correspondantes
// 1 mo et non pas 1048576 octets par exemple... C'est plus lisible !
if ($taille >= 1048576) // Si la taille est supérieur à cette valeur
{
$taille_res = round($taille / 1048576, 2);// On converti en Mo
$unite = Mo;// Et on place cette variable à Mo : pour l'affichage du résultat
}
elseif ($taille >= 1024)// Sinon, si la taille est inférieur à 1 Mo et supérieure à 1 ko
{
$taille_res = round($taille / 1024, 0);// On converti en ko
$unite = ko;// Et on place cette variable à ko : pour l'affichage du résultat
}
else
{
$taille_res = $taille;// et sinon (inférieur à 1 ko), on laisse la taille telle quelle...
$unite = octets;// Et on place cette variable à octets : pour l'affichage du résultat
}
if ($fichier != "." && $fichier != ".." )//pour éviter l'affichage des . et .. dans le résultat du listing
// Affichage du résultat
echo "<TR><TD ALIGN=CENTER>$type_res</TD><TD><a href='$dir/$fichier'>$fichier</a></TD><TD>".$taille_res." ".$unite."</TD><TD>".$aff_date."</TD></TR>";
}
echo "</TABLE>\n";// Fermeture du tableau
closedir($dossier);// Fermeture du dossier
?>
</BODY
<!-- La taille des fichiers est limitée à 2 chiffres après la virgule, arrondi supérieur (uniquement pour les hébergeurs acceptant le php4). -->
</HTML>
Marsh Posté le 29-11-2002 à 23:35:36
il manque < au début : devant html
rajoute et reteste (repasse en php)
tomilou a écrit a écrit : Bon voilà c'est renommé en .php3 Pour ton info, il y a 3 fichiers, un gif, un txt et un jpg La page : HTML> <HEAD> <TITLE> Listing </TITLE> <!-- Titre de la fenêtre --> </HEAD> <BODY BGCOLOR="#FFFFFF"> <? $dir="MCSE";// Répertoire dont le contenu sera listé $dossier=opendir($dir);// Ouverture du répertoire echo "<U><B>Contenu du répertoire : ".$dir."</B></U><BR><BR>"; echo "<TABLE border=0>\n";// Création d'un tableau pour améliorer la lisibilité echo "<TR><TD ALIGN=CENTER>Type</TD><TD>Noms</TD><TD>Taille</TD><TD ALIGN=CENTER>Date</TD></TR>";//création des titres de colonnes while($fichier=readdir($dossier))//parcours du répertoire { $type = is_dir("$dir/$fichier" );//est-ce un fichier ou un répertoire ? $taille = filesize("$dir/$fichier" );// Récupération de la taille du fichier (ou du répertoire) $date = filemtime("$dir/$fichier" );// Récupération de date de dernière modification du fichier (ou du répertoire) $aff_date = date("d/m/Y", $date);// Mise en forme de la date : 01/01/2001 if ($type) { $type_res = "D"; } else { $type_res = "F"; } // On peut utiliser cette façon aussi pour tester s'il s'agit d'un fichier ou d'un répertoire // Tout est fait en une seule ligne ! // is_dir("$dir/$fichier" ) ? $type_res = "D" : $type_res = "F"; // Contrôle de la taille du fichier afin d'afficher les valeurs correspondantes // 1 mo et non pas 1048576 octets par exemple... C'est plus lisible ! if ($taille >= 1048576) // Si la taille est supérieur à cette valeur { $taille_res = round($taille / 1048576, 2);// On converti en Mo $unite = Mo;// Et on place cette variable à Mo : pour l'affichage du résultat } elseif ($taille >= 1024)// Sinon, si la taille est inférieur à 1 Mo et supérieure à 1 ko { $taille_res = round($taille / 1024, 0);// On converti en ko $unite = ko;// Et on place cette variable à ko : pour l'affichage du résultat } else { $taille_res = $taille;// et sinon (inférieur à 1 ko), on laisse la taille telle quelle... $unite = octets;// Et on place cette variable à octets : pour l'affichage du résultat } if ($fichier != "." && $fichier != ".." )//pour éviter l'affichage des . et .. dans le résultat du listing // Affichage du résultat echo "<TR><TD ALIGN=CENTER>$type_res</TD><TD><a href='$dir/$fichier'>$fichier</a></TD><TD>".$taille_res." ".$unite."</TD><TD>".$aff_date."</TD></TR>"; } echo "</TABLE>\n";// Fermeture du tableau closedir($dossier);// Fermeture du dossier ?> </BODY <!-- La taille des fichiers est limitée à 2 chiffres après la virgule, arrondi supérieur (uniquement pour les hébergeurs acceptant le php4). --> </HTML> |
Marsh Posté le 29-11-2002 à 23:40:52
Putain la faute ! hum no comment plz
Bref, voici la page uploadée et renommé (http://thomas.basm.be/MCSE/listing.php3) .php3 avec le bon tag <HTML>, mais c toujours pas ca,.... dis en fait j'ai été voir sur ton site perso et c'est ce genre de liste auquel je voudrais arriver...
Marsh Posté le 29-11-2002 à 23:44:43
dans mon cas ce genre de liste est géré par apache
c'est la config d'apache qui permet ça
mais le petit scrip en php est censé pallier à ce genre de pb (puisque j'ai vu que chez ton hébergeur on ne peut pas parcourir un dossier)
mais t'en fais pas on va trouver
je suis pas doué en php non plus mais bon, là ça doit pas être très compliqué
sinon, va fair eun tour dans la section programmation au cas où...
@+
Marsh Posté le 29-11-2002 à 23:51:24
sinon j'ai vu un autre post intéressant : http://forum.hardware.fr/forum2.ph [...] subcat=393
Marsh Posté le 29-11-2002 à 23:57:46
t'as essayé cet autre script ?
là ch'suis mort
je regarde tout ça demain !
@+
Marsh Posté le 29-11-2002 à 23:58:24
j'ai vu sur ton site, ça marche bien,, merci pour toute ton aide et bonne nuit.
A+
Marsh Posté le 29-11-2002 à 23:03:35
Bonjour,
Petite question dont je ne trouve pas la réponse, même en ayant déjà cherché à gauche à droite : comment puis-je rendre accesible à tout le monde le contenu d'un dossier créé dans mon compte FTP sur le serveur de mon provider ? En clair, j'ai pas mal de fichier que je voudrais rendre disponible simplement en les uploadant dans un dossier sur un serveur FTP. Pour accèder à ces fichiers, il suffirait de taper l'URL et on accèdrait directement au listing complet des fichiers se trouvant dans cette directory.
Comment faut-il faire plz
Merci