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 :

récupérer image à partir d'une url


Sujet :

Langage PHP

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Saint-Nazaire
    Inscrit en
    Février 2014
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Saint-Nazaire

    Informations forums :
    Inscription : Février 2014
    Messages : 1
    Points : 1
    Points
    1
    Par défaut récupérer image à partir d'une url
    Bonjour à tous j'essaye de dévelloper un script qui récupère l'image à partir de l'url et qui la place dans le dossiers skins. Voilà ce que ça donne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
     
    $url = $_POST['skin'];
    if(url_exists($url))
    {
    	// L'url du fichier
    	$ext = explode('.',$url);
    	$ext=$ext[count($ext)-1];
    	echo $ext;
    	// On recupère le nom du fichier
    	$name = $_POST['pseudo'];
    	// On copie le fichier
     
    	if(file_exists("./skin/".$name.".".$ext)) {
    		unlink("./skin/".$name.".".$ext);
    		echo "Le skin précédent a été suprimé du serveur.";
    	}
     
    	if(copy($url,"./skin/".$name.".".$ext))
    	{
    		echo "<br>Votre skin a bien été envoyé.<br>";
    	}
    	else echo "erreur";
    }
    else
    {
    	echo "l'adresse URL n'est pas valide!";
    }
     
     
    function url_exists($url) {
    	$curl = curl_init($url);
    	curl_setopt($curl, CURLOPT_NOBODY, true);
    	$result = curl_exec($curl);
    	if ($result !== false)
    	{
    	  $statusCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
    	  if ($statusCode == 404)
    	  {
    		return false;
    	  }
    	  else
    	  {
    		return true;
    	  }
    	}
    	else
    	{
    		return true;
    	}
    }
    Mais à chaque fois j'obtiens erreur! Quelqu'un sait pourquoi la fonction copy() ne marche pas?

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Et l'erreur que tu obtiens est .... ?

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Mars 2011
    Messages : 5
    Points : 7
    Points
    7
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Et l'erreur que tu obtiens est .... ?
    Je pense qu'il parlait du mot "erreur" renvoyé à la ligne 22. J'ai testé le code en local, et il a très bien fonctionné

  4. #4
    Membre actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2007
    Messages
    314
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2007
    Messages : 314
    Points : 217
    Points
    217
    Par défaut
    à la place du essaye de faire un et
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     echo "./skin/".$name.".".$ext
    comme ça tu vérifie les valeurs des fichiers source et destination .

    mais l'idéale est de faire une gestion des erreurs Exception

  5. #5
    Membre du Club
    Homme Profil pro
    IT Operator
    Inscrit en
    Mars 2013
    Messages
    43
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : IT Operator
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mars 2013
    Messages : 43
    Points : 44
    Points
    44
    Par défaut
    Fais un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    if (is_dir('./skin/') == true)
    {
    echo "Le dossier existe";
    }else{
    echo "Le dossier n'existe pas";
    }
    ça se trouve le script n'est pas placé au même endroit que skin et donc ./skin il ne trouve pas puisque le ./ c'est là ou se situe l'execution du script.

    Et tu devrais activer l'affichage des erreurs php, comme ça il t'affichera l'erreur retournée par copy

Discussions similaires

  1. [RegEx] Recréer une image à partir d'une URL (avec Yahoo Pipes)
    Par VMGodoy dans le forum Langage
    Réponses: 1
    Dernier message: 24/04/2014, 19h40
  2. problème récupération image à partir d'une URL
    Par fasfousba dans le forum Développement Web en Java
    Réponses: 6
    Dernier message: 22/02/2009, 20h35
  3. Poids d'une image a partir d'une url
    Par matique dans le forum Langage
    Réponses: 4
    Dernier message: 11/02/2006, 21h41
  4. Créer une image à partir d'une URL ?
    Par DrySs dans le forum Langage
    Réponses: 1
    Dernier message: 26/01/2006, 10h39
  5. [ java.net ] récupérer un fichier PDF à partir d'une URL
    Par nico2280 dans le forum Entrée/Sortie
    Réponses: 7
    Dernier message: 10/11/2005, 12h09

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