Recherche de fichiers avec extention differentes [Résolu]

Signaler
Messages postés
4
Date d'inscription
mercredi 6 mai 2009
Statut
Membre
Dernière intervention
22 décembre 2009
-
Messages postés
4
Date d'inscription
mercredi 6 mai 2009
Statut
Membre
Dernière intervention
22 décembre 2009
-
Bonjour,

j ai un script qui me permet d aller rechercher des fichiers avec l extention .pdf dans un repertoire sauf que maintenant il y a aussi des fichier .tif et je ne sait pas comment m en sortir pour pouvoir recup soit un pdf soit un tif, pouvez vous m aider?

voici le script actuel:


if ( isset($_POST) && (!empty($_POST['ACTION']))){
extract($_POST);
if ( $_POST['ACTION']=='SEARCH') {
$filename = $cg_path.$_POST['IMMAT'].".pdf";

if (file_exists($filename)) {
$filetest = true;
}
else {
$filetest = false;
}
}
}


d avance merci

Gilles

6 réponses

Messages postés
103
Date d'inscription
lundi 8 septembre 2003
Statut
Membre
Dernière intervention
26 décembre 2009
1
Bonsoir,

En utilisant la même base, je dirai :

if ( isset($_POST) && (!empty($_POST['ACTION']))){
extract($_POST);
if ( $_POST['ACTION']=='SEARCH') {
$filename = $cg_path.$_POST['IMMAT'].".pdf";
$filename2 = $cg_path.$_POST['IMMAT'].".tif";

if (file_exists($filename) || file_exists($filename2) ) {
$filetest = true;
}
else {
$filetest = false;
}
}
} 


extraman1
Messages postés
103
Date d'inscription
lundi 8 septembre 2003
Statut
Membre
Dernière intervention
26 décembre 2009
1
Bonsoir, il suffit de faire comme ça :

if ( isset($_POST) && (!empty($_POST['ACTION']))){
       extract($_POST);
       if ( $_POST['ACTION']=='SEARCH') {
           $filenamepdf = $cg_path.$_POST['IMMAT'].".pdf";
           $filenametif = $cg_path.$_POST['IMMAT'].".tif";

           if (file_exists($filenamepdf)){
               $filetest = true;
               $filename = $filenamepdf;
           } else if(file_exists($filenametif)){
               $filetest = true;
               $filename = $filenametif;
           } else {
               $filetest = false;
           }
       }
} 





extraman1
Messages postés
3706
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
27 avril 2012
30
Salut,

Attention, pour des raisons de sécurité extract est à proscrire, car dans ce cas tu laisses à l'utilisateur la possibilité de choisir ses variables, ce qui peut être très dangereux. Il est impératif que tu traites les données venant d'un utilisateur en t'assurant qu'elles correspondent bien à ce que tu attends.
Par ailleurs ton script est dangereux dans sa nature même : tu ne devrais pas laisser à l'utilisateur la possibilité de choisir le chemin, ou alors il faut traiter efficacement en contrôlant que le path demandé est autorisé.


Cordialement,


Kohntark -
Messages postés
4
Date d'inscription
mercredi 6 mai 2009
Statut
Membre
Dernière intervention
22 décembre 2009

Bonjour,

merci à tout les 2 pour votre aide, je vais me pencher de plus pres sur le probleme de la securité je teste ce matin la petite modif.

merci encore

Gilles
Messages postés
4
Date d'inscription
mercredi 6 mai 2009
Statut
Membre
Dernière intervention
22 décembre 2009

Re Bonjour,

la modif fonctionne, mais maintenant j ai un soucis pour l affichage: comment faire pour afficher filename ou filename2 selon le cas?

<?
if (isset($filetest)) {
echo ("<tr><td class="Head" colspan="2">Résultat
<hr></td></tr>");
if ($filetest == true) {
echo("
<tr>
<td class="Normal" width="100%">Nom du fichier</td>
<td class="Normal">Taille (Octets)</td>
");

echo("
<tr>
<td class="Normal">[.$filename. ".strtoupper($_POST['IMMAT'])."]</td>
<td class="Normal">".filesize($filename)."</td>
</tr>
");
}
else {
echo("<tr><td class="NormalRed">Impossible de trouver la carte grise</td></tr>");
}
}
?>

merci encore pour le coup de main

Gilles
Messages postés
4
Date d'inscription
mercredi 6 mai 2009
Statut
Membre
Dernière intervention
22 décembre 2009

Bonsoir,

merci extraman1 ca marche impec

Gilles