Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1154 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  taille d'un fichier distant

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

taille d'un fichier distant

n°379364
Nerdzus
Posté le 01-05-2003 à 15:36:42  profilanswer
 

J'aimerais savoir comment connaitre la taille d'un fichier distant sous php. filesize() ne marche pas. J'ai déja lu le post http://forum.hardware.fr/forum2.ph [...] subcat=393 mais je n'ai pas très bien compris la méthode head. Les fichiers dont je voudrais savoir la taille vont dépasser les 100mb.

mood
Publicité
Posté le 01-05-2003 à 15:36:42  profilanswer
 

n°379370
Freekill
Electron libre…
Posté le 01-05-2003 à 15:47:06  profilanswer
 

Le plus simple serait de pouvoir mettre un script php sur le serveur où sont les fichiers, mais je suppose que c'est impossible.
 
Sinon oui, il doit y avoir moyen d'envoyer une requête dessus puis de décortiquer le header de réponse pour avoir la taille?


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
n°379373
Nerdzus
Posté le 01-05-2003 à 15:49:33  profilanswer
 

non effectivement c impossible de mettre un script sur le serveur distant.. Je fais un script de gestion de liens par catégorie etc.. et les liens pointent souvent sur des urls distantes..

n°379375
Freekill
Electron libre…
Posté le 01-05-2003 à 15:55:29  profilanswer
 
n°379389
Nerdzus
Posté le 01-05-2003 à 16:13:25  profilanswer
 

mhh pas tout compris et les 2 premiers examples c pas le bon plan si t'as des fichiers de + de 100 Mb...
Et je crois pas que les suivants marchent avec des ftp..


Message édité par Nerdzus le 01-05-2003 à 16:16:00
n°379395
Freekill
Electron libre…
Posté le 01-05-2003 à 16:17:20  profilanswer
 

Bah fallait préciser que c'était pour un ftp aussi? :heink:
 
Sinon ben doit y avoir moyen d'adapter pour le protocole FTP, à toi de te plonger dans la doc?


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
n°379401
Nerdzus
Posté le 01-05-2003 à 16:25:05  profilanswer
 

sorry, j'y avais pas penser avant..
 
Heu sinon si je prends le 3 ème example ça me sors que le fichier que je teste fait 256 bytes alors qu'il fait 12 mb..  :heink:

n°379403
Freekill
Electron libre…
Posté le 01-05-2003 à 16:28:48  profilanswer
 

Là c'est adapté pour le protocole HTTP, ton ftp cause en? FTP
 
http://www.w3.org/Protocols/rfc959/


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
n°379404
Nerdzus
Posté le 01-05-2003 à 16:29:49  profilanswer
 

non non j'ai fait un test sur un http avant.. et la taille c t pas droit ça..

n°379407
Freekill
Electron libre…
Posté le 01-05-2003 à 16:31:25  profilanswer
 

C'était quoi ton fichier ?


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
mood
Publicité
Posté le 01-05-2003 à 16:31:25  profilanswer
 

n°379413
Nerdzus
Posté le 01-05-2003 à 16:34:20  profilanswer
 
n°379418
Nerdzus
Posté le 01-05-2003 à 16:37:13  profilanswer
 

ha c'est bon, je m'étais gouré dans un /..  :cry:

n°379419
Freekill
Electron libre…
Posté le 01-05-2003 à 16:40:09  profilanswer
 

Sinon celui là fonctionne aussi :
 

Code :
  1. <?php
  2. $server = "a1394.g.akamai.net";
  3. $file = "/7/1394/3235/v007/webdownload2.intervideo.com/windvdplatinum/p001/Enu/WinDVDPlatinum.exe";
  4. $fs = @fsockopen($server, 80, $errno, $errstr, 15);
  5. @fputs($fs, "HEAD $file HTTP/1.0\r\n" );
  6. @fputs($fs, "Connection: close\r\n\r\n" );
  7. while ($line = @fgets($fs,1024))
  8. {
  9. if (substr($line, 0, 16) == "Content-Length: " )
  10. {
  11.  $filesize = trim(substr($line, 16));
  12.  @fclose($fs);
  13.  break;
  14.         }
  15. }
  16. echo "The file is $filesize bytes long";
  17. ?>


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
n°379420
Nerdzus
Posté le 01-05-2003 à 16:41:26  profilanswer
 

ok merci, maintenant je v me planger dans le manuel ftp..  :(

n°379426
Nerdzus
Posté le 01-05-2003 à 16:54:27  profilanswer
 

pour un FTP c'est plus simple en fait, y a la fonction ftp_size(). Quelqun sait comment l'utiliser ?

n°379432
Profil sup​primé
Posté le 01-05-2003 à 17:00:39  answer
 

ftp_size($id_connection, $ficher);
 
$id_connection= id optenu grace a ftp_connect();
 
:)

n°379433
Freekill
Electron libre…
Posté le 01-05-2003 à 17:00:48  profilanswer
 

A l'arrache :
 

Code :
  1. <?php
  2. $ftp_server = "ipaddress";
  3. $ftp_user_name = "login";
  4. $ftp_user_pass = "password";
  5. $ftp_port = "21";
  6. $path = "mypath"; // eg. : "/images/";
  7. $file = "myfile.xxx";   
  8. $host_ip = gethostbyname($ftp_server);
  9. // set up basic connection
  10. $conn_id = ftp_connect($host_ip, $ftp_port);
  11. // login with username and password
  12. $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
  13. // Set the network timeout
  14. ftp_set_option($conn_id, FTP_TIMEOUT_SEC, 3600);
  15. // Passive ftp mode since I am firewalled
  16. ftp_pasv($conn_id, 1);
  17. // change to directory
  18. ftp_chdir($conn_id, $path);
  19. // get file size
  20. $size = ftp_size($conn_id, urldecode($file) );
  21. ftp_close($conn_id);
  22. echo "Size of $file: ".$size." bytes";
  23. ?>


 
(peut-être virer la partie PASV si le serveur supporte pas?)


Message édité par Freekill le 01-05-2003 à 17:01:55

---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
n°379456
Nerdzus
Posté le 01-05-2003 à 17:15:01  profilanswer
 

$ftp_user_name = "login";  
$ftp_user_pass = "password";  
 
je met koi là si le serveur demande pas de log et de pass ?
 
p.ex. pour ce lien :
ftp://ftp.edome.net/mirror/beyond [...] ch2225.exe
 
j'ai essayer avec anonymous anonymous, mais ça marche aps et avec rien ça marche pas non plus..


Message édité par Nerdzus le 01-05-2003 à 17:15:23
n°379464
Freekill
Electron libre…
Posté le 01-05-2003 à 17:17:15  profilanswer
 

Ben quand tu t'identifies comme anonymous en général un FTP te demande un mail comme pass? (none@nospam.org par exemple)


---------------
Faux & usage de faux ¤ Machins roses ¤ ASCIImage ¤ HFR Enhance v0.8.6
n°379473
Nerdzus
Posté le 01-05-2003 à 17:22:06  profilanswer
 

ha ok merci je savais pas, ça marche parfaitement


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  taille d'un fichier distant

 

Sujets relatifs
Compter les mot d'un fichier text en C[HTML/PHP] Enregistrer plutôt qu'Ouvrir un fichier dans un lien
afficher le texte d'1 fichier txt dans une page htm sans php possible?Sous Visual C++ 6.0, créer un bouton Parcourir (fichier)
Connaitre la taille en pixel d'un mot[C] copier un fichier de données formatées via une fonction externe...
un fichier .3ds peut-il contenir des coordonnées de texture ?Taille d'un fichier distant
[ PHP ] - Trouver la taille d'un fichier distant[PHP] fread sur un fichier distant dont je connais pas la taille
Plus de sujets relatifs à : taille d'un fichier distant


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR