Appeller un fichier sans connaître l'extension et le préfixe
Résolu/Fermé
A voir également:
- Appeller un fichier sans connaître l'extension et le préfixe
- Fichier rar - Guide
- Changer extension fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier host - Guide
2 réponses
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
525
Modifié par Pitet le 1/02/2017 à 12:06
Modifié par Pitet le 1/02/2017 à 12:06
Salut,
Une solution possible est d'utiliser la fonction glob() pour rechercher les fichiers et dossiers à partir d'un masque.
Par exemple :
https://www.php.net/manual/fr/function.glob.php
Bonne journée,
Une solution possible est d'utiliser la fonction glob() pour rechercher les fichiers et dossiers à partir d'un masque.
Par exemple :
$pattern = '*index*'; $files = glob($pattern); foreach ($files as $file) { if (is_file($file)) { echo $file; } }
https://www.php.net/manual/fr/function.glob.php
Bonne journée,
Meci pour ta réponse, le problème c'est que j'utilise déja cette fonction, voici mon code entier de mon fichie php :
Je ne voit donc acune solution à mon problème et je suis bloqué là dessus depuis 1 jour.
<?php session_start(); $case2 = $_SESSION['name2']; $dir = 'C:\\wamp64\\www\\doc\\'; $chemin = " '*' .$case2. '*' "; foreach (glob($dir. '*' .$case2. '*') as $filename) { echo "Nom du fichier : <a href='..\\..\\doc\\$chemin' rel="nofollow noopener noreferrer" target="_blank">" . $filename . "</a><br>"; } ?>
Je ne voit donc acune solution à mon problème et je suis bloqué là dessus depuis 1 jour.
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
525
1 févr. 2017 à 14:26
1 févr. 2017 à 14:26
Ton code semble correct, si celui-ci ne retourne aucun résultat c'est qu'aucun fichier dans le dossier doc ne correspond au masque utilisé dans la fonction glob.
Quel est la valeur de la variable $case2 ? As tu des fichiers qui correspondent au masque dans le dossier doc ?
Quel est la valeur de la variable $case2 ? As tu des fichiers qui correspondent au masque dans le dossier doc ?
andykx
>
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
1 févr. 2017 à 14:49
1 févr. 2017 à 14:49
Justement si, des fichiers contenant le mot de la variable sont présents.
Par exemple, je récupère le mot coupure dans ma variable $case2 et lorsque je met ma souris sur le lien il m'indique qu'il me renvoie vers :
http://localhost/doc/*coupure*__Il prend donc bien en compte la valeur de ma variable mais il ne comprend pas les astérisques, je ne sais pas pourquoi..
De plus admettons que j'enlève le $chemin il m'ouvre bien le dossier /doc et je vois bien tous les fichiers présens à l'intérieur.
Par exemple, je récupère le mot coupure dans ma variable $case2 et lorsque je met ma souris sur le lien il m'indique qu'il me renvoie vers :
http://localhost/doc/*coupure*__Il prend donc bien en compte la valeur de ma variable mais il ne comprend pas les astérisques, je ne sais pas pourquoi..
De plus admettons que j'enlève le $chemin il m'ouvre bien le dossier /doc et je vois bien tous les fichiers présens à l'intérieur.
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
525
Modifié par Pitet le 1/02/2017 à 15:03
Modifié par Pitet le 1/02/2017 à 15:03
La chaine *coupure* est le masque, ton lien doit pointer sur le fichier et non sur le masque :
foreach (glob($dir. '*' .$case2. '*') as $filename) { echo "Nom du fichier : <a href='/doc/" . basename($filename) . "' rel="nofollow noopener noreferrer" target="_blank">" . $filename . "</a><br>"; }
andykx
>
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
1 févr. 2017 à 15:31
1 févr. 2017 à 15:31
Effectivement tu a raison je n'avais pas penser à ça je pense qu'on est sur la bonne voie.
Cependant j'ai pas mal d'erreurs à cause des << " >> et des << ' >> .
Mon interpréteur me renvoie ça :
Parse error: syntax error, unexpected 'nofollow' (T_STRING), expecting ',' or ';' in C:\wamp64\www\accueil_accenture\doc2.php on line 12
Cependant j'ai pas mal d'erreurs à cause des << " >> et des << ' >> .
Mon interpréteur me renvoie ça :
Parse error: syntax error, unexpected 'nofollow' (T_STRING), expecting ',' or ';' in C:\wamp64\www\accueil_accenture\doc2.php on line 12