Rechercher : dans
Par :

Utilisation du header pour fair 1 image (php)

Dernière réponse le 17 mar 2007 à 22:16:17 bubuche87, le 14 mar 2007 à 16:20:51 
 Signaler ce message aux modérateurs

Bonjours tout le monde.
Je suis nouveau ici, et j'ai toujours plein de question bizarre, sui demeurent la plupart du temps sans réponse. Ces question ne sont pas des questions "en l'air" ou juste pour savoir, mais s'inscrivent belle et bien dans le cadre d'un dévellopement (de logiciels en fait :D).

alors pour la première question (qui n'est pas plus bizarre que les autres): peut on faire une image avec un header?
Je ne veux absolument pas dire: peut on rediriger une page vers une image avec un header, ça je sais que 'est possible de le faire, mais peut-oon génére une image avec un header, si on a le contenu "text" de l'image?
Je sais que dans ce cas on peut faire un fopen, fputs, fclose, puis une redirection vers l'image ainsi créée, mais cette méthode présente deux défauts:
1) on ne peut pas effacer l'image ensuite (pour "nettoyer la place").
2)elle prend du temps

merci beaucoup pour vos réponses.

P.S: je suis sur le point de me faire virer d'un autre forum, parce que mes questions sont trops bizarres. Est-ce que l'on peut poser des questions qui sortent de l'ordinaire ici?

Re merci :D

Configuration: Windows XP
Firefox 1.5.0.6

Meilleures réponses pour « utilisation du header pour fair 1 image (php) » dans :
[PHP] Headers already sent by..... VoirLorsque vous utilisez une fonction PHP qui manipule les en-têtes HTTP comme par exemple: header() setcookie() session_start() Il est important d'utiliser ces fonctions avant d'avoir généré le moindre flux vers le client. A partir du moment où...
[PHP] Upload de fichiers VoirLe langage PHP permet de gérer des fichiers envoyés (uploadés) grâce à un formulaire HTML. Formulaire d'envoi de fichiers Configuration de PHP pour permettre l'upload Récupération du fichier avec PHP Formulaire d'envoi de fichiers La...
Redimensionner un lot d'images/photos VoirVous voulez redimensionner vos photos ou images pour pouvoir les envoyer plus facilement par mail, insérer sur un blog, ou plus simplement gagner de l'espace sur votre disque dur ? Mais vous ne voulez pas les redimensionner une par une à la main...
PHP - Génération d'images VoirPrérequis PHP permet de créer des images au format GIF à l'aide d'une librairie de fonctions prévue à cet effet. La librairie permettant de créer et manipuler des fichiers graphiques se nomme GD, ainsi, pour pouvoir utiliser ces fonctions il faut...

1

Reivax962, le 14 mar 2007 à 16:26:24

Oui, c'est possible !
Je t'enjoins à aller regarder du côté de la documentation php :
http://fr2.php.net/manual/fr/ref.image.php

En utilisant ça, tu peux créer une image comme tu le souhaites, tu peux même stocker une image sous forme binaire dans une base de données et la ressortir en précisant bien dans ton header que le type MIME est image/jpeg par exemple.

Répondre à Reivax962

2

bubuche87, le 14 mar 2007 à 16:37:36

Merci beaucoup pour ton aide.
mais je viens de télécharger la version 5 de php (avec easyphp) et dans la doc ils me disent que je dois avoir "php_exif.dl" d'activé, mais je ne trouve même pas la ligne dans le php.ini.

Est-ce que c'est une extension que je dois charger?

Est-ce que tu pourrais me donner un bout de code "statique" (tu génère une image via cette méthode du header, ais bon, pas besoin de tests pour savoir si l'image existe, ou d'autre truc comme ça, une sorte de "hello wolrd" en omme :D)

Merci j'ai déjà une bonne piste pour la suite.

(je ne peux pas utiliser les fonctions gd, car je suis sous un hébergeur gratuit, et il n'accepte pas ce type de commandes (comme pour la fonction mail T_T)

pour l'instant, je suis en train d'esqye de dévelloper un site pour avoir des avatars qui changent des qu'on recharge la page, et ça marche impec avec un simple header, mais je voudrai pouvoir aller plus loin, et il me faut plus de connaissance du header pour ça.

Merci pour ton aide, vraiment.

Répondre à bubuche87

3

Reivax962, le 14 mar 2007 à 17:54:28

Essaie ça :

<?php

header("Content-type: image/png");
$string = "Hello World";
$im = imagecreatefrompng("images/button1.png");
$orange = imagecolorallocate($im, 220, 210, 60);
$px = (imagesx($im) - 7.5 * strlen($string)) / 2;
imagestring($im, 3, $px, 9, $string, $orange);
imagepng($im);
imagedestroy($im);

?>

Puis crées une page html qui appelle cette page dans une balise <img src="nomFichier.php" />

Répondre à Reivax962

4

bubuche87, le 14 mar 2007 à 19:22:16

Merci pour cette réponse, mais ce n'est pas tout à fait ça que j'attendais ^^

[quote=bubuche87]je ne peux pas utiliser les fonctions gd[/quote]

ce que je voudrais faire ressemblerai un peu à ça:

<?php

$x = header_recup ('image.jpg');
header ($x);

?>

ou alors

<?php

$x = file_get_contents ('image.jpg');
header ('content:'.$x);

?>

bref, un truc qui me permettrai de récuperer le contenu du fichiers image, de le stocker sous forme de code, et de le restituer à la demande (en fait, je dis image, mais cela inclu aussi les autre format).

Merci

Répondre à bubuche87

5

Reivax962, le 15 mar 2007 à 09:59:30

Je pensais qu'avec cet exemple tu pourrais t'en sortir :)

Est-ce que ceci te convient ?

<?php

header("Content-type: image/jpeg");
echo file_get_contents($_GET['image']);

?> 

Comme ça, tu n'as pas besoin de faire un fichier par image, juste un fichier php que tu appelles comme ça : fichier.php?image=nom.jpg

Qu'en dis-tu ?

Mais j'avoue que je n'en vois pas l'intérêt...

Répondre à Reivax962

6

 bubuche87, le 17 mar 2007 à 22:16:17

ça marche!!!!
merci beaucoup!!!
j'en avais vraiment besoin, de plus en plus en fait.
Bon, je vais te donner une application, et je pense que tu pourras extrapoler: supposons que tu ai une image que tu ne veux que que certaine personnes puisse voir, comment tu fais?

Une solution, c'est de récuperer le contenu de l'image et de le stocker en deux morceau,sur deux bdd, sur deux compte différent (et ausi sur deux serveurs différents en fait ^^). Comme ça, seuls ceux qui ont les deux adresses peuvent la voir, à l'aide d'un petit programme.

Extrapole ça à d'autre format, et tu comprendras très vite :D

Mais ne t'inquiète pas, je ne le fais que pour proteger mes oeuvres ^^


Merci encore


RECAPITULATIF: faire un header pour indiquer le type du fichier, puis un echo du contenu du fichier.

Merci a Reivax962.

Répondre à bubuche87
Collection CommentÇaMarche.net