PHP: echo : renvoyer un lien

Fermé
langelot38 Messages postés 34 Date d'inscription samedi 13 juin 2009 Statut Membre Dernière intervention 23 juin 2012 - 26 mars 2011 à 16:20
webdo Messages postés 80 Date d'inscription mercredi 31 décembre 2008 Statut Membre Dernière intervention 3 avril 2012 - 27 mars 2011 à 07:31
Bonjour,
j'ai créé un site, et j'ai un dossier dans lequel j'ai des fichiers.
J'ai un fichier PHP qui me fait la liste des fichiers présents dans le dossier où il se trouve, voici le code:

<?php
$d = dir(".");
while($entry = $d->read()) {
echo $entry."<br>\n";
}
$d->close();
?>
<?
      $folder = "./";
      $dossier = opendir($folder);
      while ($Fichier = readdir($dossier)) {
      if ($Fichier != "." && $Fichier != "..") {
      $nomFichier = $Fichier;
      echo "$nomFichier" ;
      echo "<br>";
      }
      }
      closedir($dossier);
      ?>



il m'affiche donc la liste des fichiers présent dans le dossier sans problème (après vérification, je m'aperçois qu'il me les met en double... et je ne vois pas l'erreur...) et ce que je voudrais, c'est qu'il m'affiche le nom du fichier, mais avec une url qui redirigerais vers le fichier. Je m'explique:

j'ai un fichier que l'on appellera toto.txt qui se trouve ici:
http://monsite.mondomaine.fr/telechargements/

donc son url est:
http://monsite.mondomaine.fr/telechargements/toto.txt
et si j'entre cet URL, Firefox télécharge le fichier toto.txt, et je l'ai en local.

Ce que je voudrais, c'est que dans ma liste, quand l'utilisateur clique sur le nom du fichier, son navigateur web télécharge le fichier.

ma question est, comment faire?

Je pense qu'il doit y avoir quelque chose à rajouter à mon "echo", mais je ne sais pas quoi... Et d'avance merci à vous d'avoir pris le temps de me lire et d'avoir cherché à m'aider.

A voir également:

1 réponse

webdo Messages postés 80 Date d'inscription mercredi 31 décembre 2008 Statut Membre Dernière intervention 3 avril 2012 6
27 mars 2011 à 07:31
Salut, ton problème est simple
Remplace ton echo par celui-ci:

echo '<a href="http://adresse.com/dossier/'.$nomFichier.'">'.$nomFichier.'</a>' ;


Ou encore

echo "<a href=\"http://adresse.com/dossier/$nomFichier\">$nomFichier</a>";



L'un ou l'autre tu aura le même résultat (Avec le deuxième echo n'oublie pas les \ devant " sinon tu auras une erreur).


Et aussi ne fait pas deux echo pour rien tu peux mettre ton <br/> dans le premier
0