Pb de config ou de code ?

Résolu
fregolo52 Messages postés 1114 Date d'inscription mercredi 15 juin 2011 Statut Membre Dernière intervention 6 mai 2021 - 1 juil. 2008 à 17:27
fregolo52 Messages postés 1114 Date d'inscription mercredi 15 juin 2011 Statut Membre Dernière intervention 6 mai 2021 - 2 juil. 2008 à 09:42
bonjour à tous,

Je suis grand débutant en PHP, je n'en ai jamais fait, je viens plutôt du monde C/C++ mais je dois faire des petites modif dans su un intranet.

J'ai installé EasyPHP, j'ai copié le code du serveur, en local chez moi. Et je me retrouve avec plusieurs problèmes : 
- Erreur variable non définie :
 dans index.php, cette variable est $host (hote mysql entre autre)
 dans index.php il y a require("config.php") et dans config.php : require ("acces_db.php") la variable host est dans ce fichier.
 Si je mets require ("acces_db.php") dans index.php je n'ai plus le problème.
D'où ma question, quelle pourrait être la différence entre ma config locale et le serveur ?

- Commentaires interprétés :
Autre chose très bizarre, dans config.php il a y un commentaire style // timeout -> 20min
Lorsque, je me connecte à mon appli WEB, tout le code apres la fleche -> s'affiche dans ma page web.
Si j vire la fecle dans le commentaire j'ai le meme comportement avec du code cette fois-ci, style foreach ($tableau as $cle=>$value), le code apres => s'affiche dans la page web.

Quelqu'un peut-il me guider dans mes problèmes (de config probablement) ?

Merci

3 réponses

neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
1 juil. 2008 à 18:01
Salut,

"Si je mets require ("acces_db.php") dans index.php je n'ai plus le problème.
D'où ma question, quelle pourrait être la différence entre ma config locale et le serveur ?"

Le fichier php.ini a une directive de configuration qui est auto_prepend_file
Cette directive spécifie un fichier qui sera inclu par défaut dans tous les scripts (ceux appelés directement, pas ceux inclus depuis un autre).

Pour le deuxième problème... Je n'ai qu'une seule piste : short_open_tag
Si cette directive vaut 1, les tags d'ouverture de php peuvent être :
<?php
ou
<?

La première syntaxe est la seule qui fonctionne dans toutes les configurations. La seconde, nécessite que la-dite directive soit à 1. Si elle est à 0, ils ne seront pas reconnus, et donc le code ne sera pas interprété par PHP.
C'est peut-être pas ça, mais... c'est une idée, sans voir ton fichier de config, sans voir ton code...

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

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
3
fregolo52 Messages postés 1114 Date d'inscription mercredi 15 juin 2011 Statut Membre Dernière intervention 6 mai 2021 4
1 juil. 2008 à 22:16
Neigedhiver,

je te remercie pour tes réponses, je pense que tu as répondu à ma 1ere question, je testerai ta solution demain matin 1ere heure :)
Par contre, il me semble de souvenir que tous les fichiers que j'ai vu commencent par <?php, mais je regarderai dans les fichiers inclus dans le fichiers config.php; c'est peut-être dans l'un d'entres eux qu'il y a un tag court.
0
fregolo52 Messages postés 1114 Date d'inscription mercredi 15 juin 2011 Statut Membre Dernière intervention 6 mai 2021 4
2 juil. 2008 à 09:42
Merci.

En fait tu avais tout bon, c'était exactement ça mes pb.
J'ai ajouté dans include_path mon chemin. Et cetains fichiers avaient le tag <?.
Merci d'avoir ajouter les liens sur les noms de varaible.
0
Rejoignez-nous