Affichage d'une image après son téléchargement

Eléphant du PHP | 256 Messages

24 juin 2010, 12:24

Bonjour,

Vos lumières me sont encore nécessaires. En fait, j'ai résolu à moitié mon problème, mais j'aime comprendre.

Je télécharge une image, que je veux ré-afficher après (le but ultime est de la ré-afficher après un traitement, sinon la fonctionnalité serait stupide !). :mrgreen:

Avec le code...
$folder = 'album/';
move_uploaded_file($_FILES['file']['tmp_name'], $folder.$_FILES['file']['name']);
$image = $folder.$_FILES['file']['name'];
echo '<img src='.$image.' />';
... j'affiche mon image.

Mais avec le code...
$folder = 'album/';
move_uploaded_file($_FILES['file']['tmp_name'], $folder.$_FILES['file']['name']);
$image = $folder.$_FILES['file']['name'];
header('Content-type: image/jpeg');
readfile($image);
... ça n'affiche rien, hormis l'adresse de l'image.

Du coup, ça me chagrine quelque peu, même si la deuxième syntaxe n'apporte pas grand chose.

Merci pour votre aide. :P

Cordialement,

Gaspard

d0m
Mammouth du PHP | 1141 Messages

24 juin 2010, 12:45

salut Castor,

ton code
$folder = 'album/';
move_uploaded_file($_FILES['file']['tmp_name'], $folder.$_FILES['file']['name']);
$image = $folder.$_FILES['file']['name'];
header('Content-type: image/jpeg');
readfile($image);
va bien te créer une image et l'envoyer vers le buffer de sortie, mais il te faudra tout de même une balise <img /> pour l'afficher dans un navigateur.

En fait il faut mettre ton code ci-dessus dans une page PHP, par exemple image.php, et ensuite appeler ce code dans ta balise image :
<img src="image.php" />

ViPHP
ViPHP | 1136 Messages

24 juin 2010, 13:09

Salt ,

Et avec une lecture en mode binaire , via fread() ?

As tu essayé ?

Ch.

Eléphant du PHP | 256 Messages

24 juin 2010, 14:03

Bonjour,

Merci pour ces réponses. :)

Pour la lecture en mode binaire, elle me semble un peu complexe, vu d'où je pars. :roll:

Une question complémentaire, qui m'évitera d'ouvrir un nouveau sujet :
- pour afficher une image (avec la syntaxe correcte, donc), est-on obligé de déplacer au préalable cette image ? Mes tests semblent indiquer que oui, mais j'ai un doute.

Merci.

Gaspard