Voilà, je réalisais tranquillement une visionneuse de produit façon amazon, c'est a dire avec des mini vignette sur la gauche d'une grosse vignette, lorsque j'ai commencé à buter sur le test pour savoir si le nom de fichier entré dans ma BDD existait vraiment physiquement sur le serveur (8 images possibles).
Le souci ? file_exists me renvoi toujours 'true', et du coup ma variable censée récupérer uniquement les noms de fichiers existant physiquement récupère aussi les chemins qui ne mènent à rien.
En espérant que quelqu'un voit la lumière à ma place, et me fasse ainsi gagner un précieux temps demain matin !
ps : je précise que le dossier "8" ne contient bien que les 4 images présentes dans le résultat ci-dessous.
Code : Tout sélectionner
//gestion vue produit
$chemin_destination = "img_prod/".$_GET['id_produit']."/";
$all_img = array($chemin_destination.$infos_produit[img_produit_1], $chemin_destination.$infos_produit[img_produit_2], $chemin_destination.$infos_produit[img_produit_3], $chemin_destination.$infos_produit[img_produit_4], $chemin_destination.$infos_produit[img_produit_5], $chemin_destination.$infos_produit[img_produit_6], $chemin_destination.$infos_produit[img_produit_7], $chemin_destination.$infos_produit[img_produit_8]);
$i = 0;
foreach ($all_img as $key => $is_img){
echo "$is_img".$is_img."<br>"; // test de variable
if(file_exists($is_img)){
$img[$i] = $is_img; $i++;
}
}
print_r ($img); // affichage du tableau censé ne rcuperer que les chemins d'image existant physiquementCode : Tout sélectionner
//ci-dessous le résultat du test de variable
img_prod/8/8_Cubes2014_HD-1.jpg
img_prod/8/8_Femme-plage_HD-1.jpg
img_prod/8/8_couv_chevalet_6f.jpg
img_prod/8/8_pocket6.jpg
img_prod/8/
img_prod/8/
img_prod/8/
img_prod/8/
//et ici le resultat de print_r ($img)
Array ( [0] => img_prod/8/8_Cubes2014_HD-1.jpg [1] => img_prod/8/8_Femme-plage_HD-1.jpg [2] => img_prod/8/8_couv_chevalet_6f.jpg [3] => img_prod/8/8_pocket6.jpg [4] => img_prod/8/ [5] => img_prod/8/ [6] => img_prod/8/ [7] => img_prod/8/ )