IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Créer une image à partir d'une URL ?


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    17
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 17
    Points : 18
    Points
    18
    Par défaut Créer une image à partir d'une URL ?
    Bonjour à tous

    J'essaie de développer un script d'avatar, proposant aux visiteurs d'uploader une image de leur choix (PNG) sur le serveur afin d'en faire leur avatar. Le même procédé qu'utilisé sur de grands forums en soit (Vbulletin par exemple).

    J'ai donc commencé par rajouter un champs de type "file", afin que l'utilisateur choisisse une image directement sur son disque dur, et je traite en retour la donnée entrée avec la fonction "getimagesize" :

    $file = $_FILES["avatar"];
    $format = getimagesize($file["tmp_name"]);

    Ce qui me permet de vérifier l'intégrité de l'image, son extension, sa taille, son poids, etc.

    Seulement, je voudrais maintenant rajouter un champs de type "text" où l'utilisateur entre directement l'url d'une image, sur un site distant. Comment faire dans ce cas pour :

    1) Vérifier l'intégrité de l'image, son extension, sa taille, et son poids, puisque la fonction getimagesize n'étant plus opérante ici.

    2) Copier l'image sur mon serveur :p

    J'ai pensé à la librairie GD, en utilisant la fonction "imagecreatefrompng", et en espérant que l'option "fopen wrappers" soit activée sur mon serveur. Mais je trouve cela un peu trop "compliquée". Et je sais pas si l'upload fonctionnera.

    Auriez-vous une solution plus simple et efficace ?

    Merci :p

  2. #2
    Membre averti Avatar de sohnic
    Femme Profil pro
    bioinfo
    Inscrit en
    Mai 2003
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : bioinfo

    Informations forums :
    Inscription : Mai 2003
    Messages : 426
    Points : 434
    Points
    434
    Par défaut
    Bonjour,
    De la meme façon qu'une image passée par formulaire, il te faudra sauvegarder l'image "url" sur ton serveur avant de faire un getimagesize. Sinon, je ne vois comment faire...

    J'ai ma propre methode (enfin, façon de dire parce que je la trouve plutot degueu comme methode) pour recuperer les images par url. En fait je fais comme avec un fichier standard.

    $file_img_locale=fopen("image_locale","w"); //en realite, j'adapte le nom avec l'extension qui va bien, recupérée dans l'URL)
    $file_img_distante=fopen("http://seveur/image.jpg","r");
    while(!feof($file_img_distante))
    {
    $l=fgets($file_img_distante,999);
    fputs(image_locale,$l);
    }

    Avec cette methode, j'ai toujours pu recupérer les images (a ma grande surprise d'ailleurs !). Une fois seulement, j'ai recuperer l'image, mais striee (??).
    Esperant t'avoir aidé,
    Sohnic
    http://www.noctinfo.fr/

    (\ _ /)
    (='.'=) Voici Lapinou. Aidez-le à conquérir le monde en le reproduisant.
    (")-(")

Discussions similaires

  1. Saisir une image à partir d'une photo ou d'une vidéo
    Par lohengrin56 dans le forum Flash/Flex
    Réponses: 0
    Dernier message: 07/07/2009, 16h17
  2. Réponses: 7
    Dernier message: 07/07/2008, 11h18
  3. Créer une image à partir d'une feuille Excel
    Par fredo38 dans le forum Documents
    Réponses: 4
    Dernier message: 03/07/2008, 14h11
  4. Créer une image à partir d'une scène
    Par ludollu dans le forum Ogre
    Réponses: 4
    Dernier message: 22/06/2007, 14h32
  5. Réponses: 1
    Dernier message: 01/11/2006, 17h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo