Résultat fonction PHP différente - PHP - Programmation
Marsh Posté le 14-03-2006 à 17:32:19
Master p a écrit : Que donne un `echo $_GET['page']` ? |
Rien !!! Mais je crois qu'il y a un pb de version.
Moi j'ai la version 4.3.6
Alice a la version 4.0.5
Free à la version 4.3.10
Si c'est un problème de version, comment passer outre ???
Y'a bien une solution ......... !!!???
Merci
Marsh Posté le 14-03-2006 à 17:48:00
fredko a écrit : $HTTP_GET_VARS() |
C'est pareil : je boucle sur la pâge d'accueil ..........
Et pourtant j'y croyais .............
Marsh Posté le 14-03-2006 à 17:57:10
ReplyMarsh Posté le 14-03-2006 à 17:59:40
1) Vérifie que ton formulaire est bien de type GET
2) Essaye :
echo $_GET("page" );
echo $HTTP_GET_VARS("page" );
echo $page;
Si ca marche pas c'est qu'alice c'est vraiement une grosse daube en hébergement php lol
Marsh Posté le 14-03-2006 à 18:00:10
Les explications du pourquoi
Avec tes 2 versions diffférentes, dont celle d'Alice vraiment obsolète, tu seras obligé de jongler entre la variable $_GET['page'] et $page selon le serveur sur lequel tu te trouve
Marsh Posté le 14-03-2006 à 18:01:41
Remarque que si $page ne contient rien, faut s'inquiéter
Marsh Posté le 14-03-2006 à 18:11:45
Master p a écrit : Remarque que si $page ne contient rien, faut s'inquiéter |
Si j'enlève le test du paramètre URL (2° partie) et que je met simplement echo $page; j'ai une page blanche en résultat.
Si j'enlève le test du paramètre URL (2° partie) et que je met simplement echo $_GET("page" ); ou
echo $HTTP_GET_VARS("page" ); j'ai un message Call to undefined function: array() in D:\www\php\Pcigales\frame.php on line 15. Ligne 15 correspond à la commande echo $....
J'ai fait uniquement les tests en local (là où ils devraient au moins fonctionner). Mais je m'y suis peut-être mal pris pour placer la commande ......... ?
Marsh Posté le 14-03-2006 à 18:20:45
En fait, sur ton serveur en local (en php 4.3.xxx), en mode register_global off (par défaut habituellement), la valeur donnée en url est stockée dans la variable $_GET['page'], alors qu'elle est dans la version php d'Alice (php 4.0.xxx) stockée dans la variable $HTTP_GET_VARS['page'], et, si et seulement si en mode register_global on, dans la variable $page.
Marsh Posté le 14-03-2006 à 18:20:55
fais toi une page que tu nommes test.php
dedans tu copies colles ça :
Code :
|
Tu upload ça chez Alice et ensuite tu appelles la page avec :
http://www.monSiteChezAlice.fr/test.php?page=ok
et tu nous dis ce que ça affiche
D'après ce qu'on t'a dit précédemment, ça devrait ne pas t'afficher ok pour le GET, mais t'afficher ok pour le HTTP
Marsh Posté le 14-03-2006 à 18:33:49
J'ai fait ce que tu m'as dit.
Et j'ai comme résultat
GET :
HTTP :
Fatal error: Call to undefined function: array() in test/test.php on line 3
Là je commence à être paumé .................
Marsh Posté le 14-03-2006 à 19:05:02
hummm... fait un phpinfo() pour qu'on essaye de comprendre comment la blondasse est configuré
<?
phpinfo();
>
Marsh Posté le 14-03-2006 à 19:06:53
Il faut chercher : REQUEST_METHOD et register_global
fred
Marsh Posté le 14-03-2006 à 19:15:18
Tu peux voir le phpinfo d'Alice là : http://th11.free.fr/phpinfo-alice.htm
Pour REQUEST_METHOD et register_global, j'ai déjà cherché aujourd'hui, mais sans résultat .....
Marsh Posté le 14-03-2006 à 19:19:33
register_globals -> On
Si tu fais un `echo $'page`, ça devrait afficher le contenu de la variable passé en url
De plus, vu les variables d'envrionenment, je suis étonné que le $HTTP_GET_VARS soit vide
Marsh Posté le 14-03-2006 à 19:20:46
CTRL+F "REQUEST_METHOD" = GET
CTRL+F register_global = on
Normalement echo $page; devrait marcher...
Marsh Posté le 14-03-2006 à 19:29:10
fredko a écrit : CTRL+F "REQUEST_METHOD" = GET |
Si j'écris mon script comme cela :
Code :
|
J'ai une page blanche en retour ...........
Marsh Posté le 14-03-2006 à 19:32:49
Sur le serveur d'Alice ?
Le problème se situerait-t-il pas entre la chaise et le clavier
Sinon franchement, je vois vraiment pas
Marsh Posté le 14-03-2006 à 19:40:18
Master p a écrit : Sur le serveur d'Alice ? |
Avec le même script, chez Free, j'obtient uniquement le nom de la page (sur une page blanche ..... )
Marsh Posté le 14-03-2006 à 19:42:34
Master p a écrit : Sur le serveur d'Alice ? |
Chez Alice aussi. J'l'avais pas vu, c'était caché ............
Marsh Posté le 14-03-2006 à 19:46:14
t671 a écrit : Avec le même script, chez Free, j'obtient uniquement le nom de la page (sur une page blanche ..... ) |
Normal, Free est en mode register_globals ON
Je récapitule :
| Variable | Register Global |
En supposant que tu disposes d'une version récente de php en local (ce qui est sûrement le cas.
Edit: Quoique le mystère du $HTTP_GET_VARS chez Alice reste entier
Marsh Posté le 14-03-2006 à 19:58:02
D'après toi, le $HTTP_GET_VARS devrait fonctionner ???
Je réessaierais demain .........
Marsh Posté le 14-03-2006 à 19:59:57
t671 a écrit : D'après toi, le $HTTP_GET_VARS devrait fonctionner ??? |
devrait ... oui
Mais bon, contente-toi d'utiliser la variable globale si tu veux pas te prendre la tête
Marsh Posté le 15-03-2006 à 02:18:11
Master p a écrit : |
clair, le "Call to undefined function: array()" est fort mystérieux.
Enfin de toute façon un hébergeur qui te propose du PHP 4.0, y a pas à chercher, c'est un hébergeur de merde
Marsh Posté le 15-03-2006 à 12:09:12
Master p a écrit : devrait ... oui |
J'ai réessayé ce matin (à la fraîche) avec $HTTP_GET_VARS['page'], et c'est OK !!!
En fait, j'avais oublié de remplacer un $_GET ...........
Merci à tous ceux qui m'ont aidé .......
Marsh Posté le 14-03-2006 à 13:18:39
Bonjour,
J'ai un fichier php qui gère des pseudos-frames.
En local ou chez Free ça fonctionne, mais chez Alice, ça fonctionne pas. C'est à dire que le changement de page ne se fait pas et reste sur la page par défaut.
Voici mon code php (y'a peut-être un option particulière à ajouter pour Alice, mais laquelle ? Ou devrais-je employer une autre méthode, mais laquelle ?) :
Les pages à ouvrir ainsi que ce code sont bien hébergés par Alice.
Il me reste plus que ce problème à résoudre ..........
Merci pour vos lumières ......