Probleme de script

Signaler
Messages postés
365
Date d'inscription
samedi 26 juin 2004
Statut
Membre
Dernière intervention
17 avril 2008
-
Messages postés
208
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
2 décembre 2008
-
toujours a la recherche d'un script opur copier une image depuis un url http:



<?php

function wwwcopy($file,$nfile)

{

$fp = @fopen($file,"rb");

while(!feof($fp))

{

$cont.= fread($fp,1024);

}

fclose($fp);



$fp2 = @fopen($nfile,"w");

fwrite($fp2,$cont);

fclose($fp2);

}



wwwcopy("http://img.nexen.net/general/basd.gif","ouah.gif");



?>
me renvoies :

Fatal error: Maximum execution time of 10 seconds exceeded in /data/members/free/laposte/fr/p/r/o/profil/htdocs/utilitaire/testa.php on line 7



des idées pour contrer ca ???
_Marikou

9 réponses

Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
Salut,



tout d'abord évite de poster 36 topics, tu réponds dans le topic que tu as crée et hop...



Ensuite vérifie que le fichier a bien pu s'ouvrir...



Perso je remplacerai ton code par ça :



if( $fp = @fopen($file,'rb'))

{

while(!feof($fp))

{

$cont.= fread($fp,1024);

}

fclose($fp);

}


<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
Messages postés
208
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
2 décembre 2008

firewall
Messages postés
654
Date d'inscription
jeudi 3 avril 2003
Statut
Membre
Dernière intervention
10 février 2009
1
Je pense aussi que c'est leur firewall,
éssai set_time_limit(30) où 30 est le temps en seconde maximum d'exécution de la page. (je sais plus si c'est permis chez free).

win

[irc://irc.chatown.org/warriorhouse irc.chatown.org]
Messages postés
365
Date d'inscription
samedi 26 juin 2004
Statut
Membre
Dernière intervention
17 avril 2008

bon j'ai essaye le set_time,

<?php

set_time_limit(30);



function wwwcopy($file,$nfile)

{

if( $fp = @fopen($file,'rb'))

{

while(!feof($fp))

{

$cont.= fread($fp,1024);

}

fclose($fp);

}



$fp2 = @fopen($nfile,"w");

fwrite($fp2,$cont);

fclose($fp2);

}



wwwcopy("http://img.nexen.net/general/basd.gif","ouah.gif");



?>

ca me creee le fichier ouah.gif mais avec 0ko j'en conclut que le if
n'est pas validé , et meme quandje change l'url de l'image a
telecharger ca marche pas, quelqu'un saurait pourquoi je ne peut ouvrir
pour lecture le fichier distant ?



[desolé d'avoir poster 3 fois mais a chaque fois le sujet avait devié
sur comment lancé un script a heure fixe ou comment copier une image en
gif ]

_Marikou
Messages postés
1267
Date d'inscription
mercredi 7 juillet 2004
Statut
Membre
Dernière intervention
29 juin 2010
1
Bonsoir,

Quelques modifications :

<?php

set_time_limit(30);



function wwwcopy($file,$nfile) {

if( $fp = @fopen($file, 'rb')) {

$cont = ''; // T'éviteras un msg d'erreur

while(!feof($fp)) {

$cont.= fread($fp, 1024);

}

fclose($fp);

$fp2 = @fopen($nfile, 'w');

fwrite($fp2, $cont);

fclose($fp2);

} else {

echo 'Erreur';

}

}



wwwcopy('http://img.nexen.net/general/basd.gif', 'ouah.gif');



?>

<hr size="2" width="100%">
Si ma reponse te convient, merci de l'accepter !
Messages postés
1267
Date d'inscription
mercredi 7 juillet 2004
Statut
Membre
Dernière intervention
29 juin 2010
1
Oups,

if(@fopen($file, 'rb')) {

<hr size="2" width="100%">
Si ma reponse te convient, merci de l'accepter !
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
le if( $fp = @fopen($file, 'rb'))




est correct...
<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
Messages postés
365
Date d'inscription
samedi 26 juin 2004
Statut
Membre
Dernière intervention
17 avril 2008

oui oui je me doute qu'il est correct mais le probleme est que ca
marche jamais, quel que sois le fichier que j'indique (fichier image)
ca refuse de le copier. peut etre que ca vient du transfert binaire ou
alors de quelque chose de plus complexe.

en regardant l'erreur (script de jojo737) j'ai toujours echo "erreur"
dans le if() ne s'active jamasi je cherche a comprendre pourquoi pour
pouvoir passer outre



merci a tous sincerement pour vos precedentes idées ca m'a beaucoup aidé.


_Marikou
Messages postés
208
Date d'inscription
mercredi 22 janvier 2003
Statut
Membre
Dernière intervention
2 décembre 2008

J'ai eu le meme problème que toi et je l'ai resolu en ouvrant un port 80 sortant sur le firewall du serveur.