Afficher une image en PHP sans <img>
Fornikator
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
J'aimerais savoir comment afficher une image en PHP sans <img>.
Comme ici : http://www.images-host.fr
L'image est affiché en PHP sans code source.
Merci d'avance.
J'aimerais savoir comment afficher une image en PHP sans <img>.
Comme ici : http://www.images-host.fr
L'image est affiché en PHP sans code source.
Merci d'avance.
4 réponses
-
salut à tous
bon bah il suffit de connaitre l'extension de l'image et ceci est facile avec le php (preg_match mais moi j'utilise split)
voici le code que je te proposes<?php $img=$_GET['img']; //j'obtiens l'image @$ext=split('\.',$img); //tableau dont la derniere case est //l'extension $taille=count($ext); //taille du tableau $taille=$taille-1; //pointeur de la derniere case $extention=$ext[$taille]; //l'extention if($extention=='jpg') { $extention='jpeg'; //eviter jpg car seul jpeg marche avec imagecreate } header ('Content-type: image/'.$extention.''); $function_create='imagecreatefrom'.$extention; $image = $function_create($img); $function_out='image'.$extention; $function_out ($image); ?>
"@" au niveau du split sert eviter l'affichage d'une errreur idiote de fonction obsolete
allez amuses toi bien et bonne continuation ;)
@+-
-
normalement pour tout les formats images mais ce script peut avoir un bug sur les bmp donc voici une autre alternative
<?php $img=$_GET['img']; @$ext=split('\.',$img); $taille=count($ext); $taille=$taille-1; $extention=$ext[$taille]; if($extention=='jpg') { $extention='jpeg'; } header ('Content-type: image/'.$extention.''); echo file_get_contents($img); ?>
bon avec celui ci tout marche plus besoin de poser de question
@+ ;) -
-
oui ce code peut contenir des failles très facile à corriger tout d'abord l'exisence d'un fichier index permettra d'éviter la visualisation des fichiers dans le dossier source maintenant il te suffit de créer une fonction qui donnera les extentions à eviter tel .mp3 .php .... donc il suffit de bien verifier la variable $extention elle doit être différente de tous les autres extentions (autres que des images) présentes sur le serveur soit
if($extention=='php') { $error='ah tu veux mes fichiers php' } if($extention=='mp3') { $error='ah tu veux mes fichiers mp3' } //ainsi de suite pour proteger le autres fichiers
pour le telechargement ceci est du à une erreur dans les header il faut donc verifier tout d'abord si $img est vide avec empty($img)
bon voici le code
<?php if(!empty($img)) { $img=$_GET['img']; @$ext=split('\.',$img); $taille=count($ext); $taille=$taille-1; $extention=$ext[$taille]; //les conditions sur certaines extentions cités plus haut if(empty($error)) { if($extention=='jpg') { $extention='jpeg'; } header ('Content-type: image/'.$extention.''); echo file_get_contents($img); } else { echo 'tentative de vol de fichiers serveurs >_<' } } else { echo 'entrez une image'; } ?>
-
-
Bonjour,
<?php // Dé commentez la ligne qui vous intéresse: // header("Content-type: image/gif"); // header("Content-type: image/png"); // header("Content-type: image/jpeg"); // Remplacez ladressedemonimage par l'adresse de votre image require("ladressedemonimage"); ?> -
https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/916429-creez-des-images-en-php
vas voir ici tu devrais trouver ton bonheur -
ze-life-of-quent1 : Ok, mais moi c'est pour un hébergeur d'image et il y aura plusieurs extensions différente : jpeg, jpg, png, gif, bmp.
Faire un GET comme ce site : http://www.images-host.fr
C'est quoi qui faut mettre pour les extensions suivante : jpeg, jpg, png, gif, bmp ?
C'est possible de faire un header("Content-type: image/gif"); mais pour toute les extension.