Comment afficher mon image uploadée au-dessus de la racine ?

Résolu
ephelya Messages postés 282 Date d'inscription   Statut Membre Dernière intervention   -  
ephelya Messages postés 282 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour, tout le monde
J'ai un formulaire d'upload de photos qui fonctionne très bien et qui enregistre les photos au-dessus de la racine.
Mon souci c'est que je n'arrive pas à afficher les photos ensuite.
Lorsque je fais
    $img= '../uploads/photos/IMG_0435.jpg';
    if (file_exists($img))
    {
        echo "<img src='$img'>";
        echo "ok";
    }

J'ai bien mon "ok" mais l'mage ne s'affiche pas...Je précise que le dossier upploads et le dossier photos sont tous les deux en chmod 777.
Qu'est-ce que je fais mal ?

Merci d'avance pour votre aide !
Configuration: Macintosh / Firefox 101.0

6 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Bonjour,

Par défaut, php ne peut exécuter (lire) que des fichiers qui se trouvent dans son répertoire web...
Si tu as placé tes fichiers en dehors de ce dossier.. (ce qui normalement ne se fait pas...) il faut faire des réglages au niveau d'apache
Des solutions sont proposées un peu partout sur le net... mais franchement.. pourquoi se compliquer la vie...
Déplaces ton dossier uploads DANS ton dossier web .. et ça marchera très bien.
0
ephelya Messages postés 282 Date d'inscription   Statut Membre Dernière intervention   2
 
J'ai aussi essayé en mettant le répertoire dans le dossier web, mais là j'ai des pbs de droits, ça ne veut pas enregistrer le fichier alors que tout est en 777. Mais bon je vais continuer à chercher, je devrais bien y arriver ! ;-)
Merci pour ton aide !
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Il faudrait que tu nous montres le code que tu utilises pour faire la sauvegarde ... qu'on regarde ce qui coince éventuellement
0
ephelya Messages postés 282 Date d'inscription   Statut Membre Dernière intervention   2
 
je viens de changer le épertoire pour le mettre dans le dossier www, et voici le mesage quej'ai à l'upload :
Warning:  move_uploaded_file(http://admin.escalier-b.com/css/img/photos/IMG_0430.jpg): Failed to open stream: HTTP wrapper does not support writeable connections in /homepages/41/d736140878/htdocs/escalierb/admin/app/Views/Templates/Front/Forms/trat_photouploads.php on line 26
0
ephelya Messages postés 282 Date d'inscription   Statut Membre Dernière intervention   2
 
et voici mon script d'upload
    $uploaddir = DIR_IMG."photos/";
    $uploadfile = $uploaddir . basename($_FILES['photo']['name']);

    echo '<pre>';
    if (move_uploaded_file($_FILES['photo']['tmp_name'], $uploadfile)) {
        echo "Le fichier est valide, et a été téléchargé
            avec succès. Voici plus d'informations :\n";

            echo "<div class='upphot'><img src='".$uploadfile."'></div>";
    } else {
        echo "Attaque potentielle par téléchargement de fichiers.
            Voici plus d'informations :\n";
    }
    echo 'Voici quelques informations de débogage :';
    echo "url dest = ". $uploadfile;
    print_r($_FILES);
    
    echo '</pre>';
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ephelya Messages postés 282 Date d'inscription   Statut Membre Dernière intervention   2
 
et le contenu de $_FILES
    [photo] => Array
        (
            [name] => IMG_0430.jpg
            [type] => image/jpeg
            [tmp_name] => /tmp/php49hyY5
            [error] => 0
            [size] => 82420
        )
0
jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
Tu peux me faire un var_dump de la variable
var_dump($uploaddir);


et au cas où,
avant le move .. faire
if( !is_dir($uploaddir)){
  echo $uploaddir . " n'est pas un dossier  !" ;
  exit;
}

if( !is_writable($uploaddir)){
  echo $uploaddir . " n'est pas autorisé en écriture !" ;
  exit;
}


J'ai l'impression que ta variable DIR_IMG contient une URL ... et non un CHEMIN (relatif ou absolu)
0
ephelya Messages postés 282 Date d'inscription   Statut Membre Dernière intervention   2
 
Hé hé, tu me sauvs la mise, une fois encore ! Tu avais raison, le chemin n'était pas bon. Non seulement c'étiat une url mais en plus je m'étais tropée de dossier...
Du coup tout est réglé et j'arrive bien à afficher mon image, c'est parfait !:-)
Merci beaucoup !
0