téléchargement de fichier distant [résolu]

téléchargement de fichier distant [résolu] - PHP - Programmation

Marsh Posté le 03-11-2004 à 14:18:03    

Salut all!
 
VOila, j'ai l'idée mais je ne vois pas trop comment faire, alors je compte sur vous. L'histoire est d'uploader une image qui est à l'adresse: http://www.domaine.com/img.jpg à l'adresse http://www.domaine2.com/images/img.jpg.
 
Pour ce faire, j'ai pensé aux sockets, vous en pensez quoi?
Quelqu'un a une autre idée?
 
Merci d'avance


Message édité par bob007 le 03-11-2004 à 16:43:46
Reply

Marsh Posté le 03-11-2004 à 14:18:03   

Reply

Marsh Posté le 03-11-2004 à 14:20:15    

http://fr2.php.net/manual/fr/ref.ftp.php


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 03-11-2004 à 14:22:03    

oui j'ai pensé au ftp aussi mais je ne vois pas comment chopper l'image sur le serveur distant ...

Reply

Marsh Posté le 03-11-2004 à 14:26:23    

fopen()


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 03-11-2004 à 14:28:42    

ah yes!
Mais si je fé genre
fopen(file1)
fread(file1)  
fopen(file2)
fwrite(file2)
fclose(file1)
fclose(file2)
enfin tu vois, sans passer par le ftp, ca serait plus simple pour moi, ca doit marcher ca non?

Reply

Marsh Posté le 03-11-2004 à 14:34:34    

http://fr2.php.net/manual/fr/funct [...] ntents.php [:itm]


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 03-11-2004 à 14:36:23    

$f = fopen("http://www.domaine.com/img.jpg","r" );
   $f2 = fopen("nom_de_fichier","w+" );
   while ($r=fread($f,8192) ) {
     fwrite($f2,$r);
   }
   fclose($f2);
   fclose($f);
 
j'ai pas testé mais ca devrait passer

Reply

Marsh Posté le 03-11-2004 à 14:39:15    

yes oki merci, je teste tout ca et je tiens au courant! merci encore

Reply

Marsh Posté le 03-11-2004 à 16:43:13    

et voila le travail:

Code :
  1. function get_file($img, $company)
  2. {
  3. $contents = file_get_contents($img);
  4. $dir = "images/logos/" . $company . "/";
  5. $ext = substr(strrchr($img, "." ), 1);
  6. if (!is_dir($dir))
  7.    mkdir($dir);
  8. if ($handle = @fopen($dir.$_SESSION['fileid'].".".$ext, "w" ))
  9.    {              
  10.    echo $dir.$_SESSION['fileid'].".".$ext;
  11.      if (fwrite($handle, $contents) === FALSE)
  12.          echo $lang['no_img'];
  13.   fclose($handle);
  14.   return ($dir.$_SESSION['fileid'].".".$ext);
  15.  }
  16. else
  17.  return (NULL);
  18. }


 
Merci à vous

Reply

Marsh Posté le 03-11-2004 à 17:11:18    

euh ouais ca doit marcher, mais dans le contexte de ton site uniquement :)

Reply

Marsh Posté le 03-11-2004 à 17:11:18   

Reply

Marsh Posté le 04-11-2004 à 09:14:45    

oui, c'est juste une fonction qui requiert un bon paquet de chose autours! A moins que tu veuilles dire par la que c'est mal écrit! :/
 (tiens j'ai oublié global $lang; lol)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed