Probleme file_get_contents qui ne s'exécute pas

Pierrick81
Invité n'ayant pas de compte PHPfrance

25 mai 2010, 18:40

Bonjour,

J'ai un petit problème avec une ligne de commande qui ne s'exécute pas sur un serveur, alors qu'elle s'exécute sur un autre.

La ligne est la suivante :

Code : Tout sélectionner

$code_transit = file_get_contents(''.$html_code.$affsite.'');
Peut-être est-ce du à une version de PHP qui ne supporte pas file_get_contents.

Si quelqu'un a une petite solution pour me dépanner, ça serait super.

merci à vous.

Pierrick

ViPHP
ViPHP | 5462 Messages

25 mai 2010, 19:27

quelle est la version de ton serveur ?

Pierrick81
Invité n'ayant pas de compte PHPfrance

25 mai 2010, 19:36

La version sur laquelle ça ne marche pas est 5.0.4

La version sur laquelle ça marche est 5.1.6

Voili

ViPHP
ViPHP | 5462 Messages

25 mai 2010, 19:39

active la gestion des erreurs display_errors + error_reporting

Pierrick81
Invité n'ayant pas de compte PHPfrance

25 mai 2010, 19:48

Je n'ai pas accès à la gestion du serveur malheureusement !

ViPHP
ViPHP | 5462 Messages

25 mai 2010, 20:14

Je n'ai pas accès à la gestion du serveur malheureusement !
tu peux le faire dans ton code, avec un ini_set

si tu fais
var_dump(ini_get('display_errors'), ini_get('error_reporting'));
ca donne quoi

Pierrick81
Invité n'ayant pas de compte PHPfrance

25 mai 2010, 20:24

ça m'affiche ceci :
string(0) "" string(4) "2047"

ViPHP
ViPHP | 5462 Messages

25 mai 2010, 20:33

ça m'affiche ceci :
string(0) "" string(4) "2047"
donc pas aucune erreur ne s'affichera

et
echo ini_get('disable_functions');

Pierrick81
Invité n'ayant pas de compte PHPfrance

25 mai 2010, 20:44

Euh là je suis désolé mais je ne comprends pas du tout ce que je dois faire.

ViPHP
ViPHP | 5462 Messages

25 mai 2010, 20:48

Euh là je suis désolé mais je ne comprends pas du tout ce que je dois faire.
pareil que t'alleur, c'est pour voir si certaine fonction son déactiver, suivant le résultat je te dirais quoi mettre, dis moi juste se que ca te revoie, mais fais plutôt
var_dump(ini_get('disable_functions'));
si ca te revoie rien ou genre juste string(0) ""

au debut de ton code tu fais
ini_set('display_errors', 1);
ini_set('error_reporting', E_ALL | E_STRICT);
et la il va te dire ou est le soucis :wink:

Pierrick81
Invité n'ayant pas de compte PHPfrance

25 mai 2010, 21:02

Voilà le résultats :
Warning: file_get_contents(http://www.groupeisoeco.com/adveruser/c ... 1236928998) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.1 401 Authorization Required in /home/virtual/site5/fst/var/www/html/adveruser/adverpay.php on line 118
string(1) "1" string(4) "4095" string(0) ""
Notice: Undefined variable: varfrind in /home/virtual/site5/fst/var/www/html/adveruser/adverpay.php on line 122

ViPHP
ViPHP | 5462 Messages

25 mai 2010, 21:07

normale ta besoin d'un login et un mot de passe pour y accédé au fichier, sur l'autre serveur tu le prend direct en local ?

Pierrick81
Invité n'ayant pas de compte PHPfrance

25 mai 2010, 21:10

Ahhh!
Oui effectivement, il y un log et un mot de passe sur ce serveur !

Merci beaucoup pour ces explications.

ViPHP
ViPHP | 5462 Messages

25 mai 2010, 21:18

Ahhh!
Oui effectivement, il y un log et un mot de passe sur ce serveur !

Merci beaucoup pour ces explications.
je pense que c'est possible de simuler la connexion login mot de passe via le 3eme paramètre (stream_context) de file_get_contents :wink:

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9782 Messages

25 mai 2010, 22:40

Bonjour,

Tu peux essayer de passer tes identifiants dans l'url, ça devrait fonctionner normalement :

Code : Tout sélectionner

http://NOMDUTILISATEUR:[email protected]/adveruser/central735x90.php?affsite_id=1236928998
Quand tout le reste a échoué, lisez le mode d'emploi...