Probleme pour faire passer des infos par l'url. [PHP] - Programmation
Marsh Posté le 28-07-2002 à 19:05:00
bon essaye ça:
$lang=HTTP_GET_VARS("lang" )
ça devrait marcher...
Marsh Posté le 28-07-2002 à 19:11:06
euh, j'ai un "Call to undefined function" et je trouve pas ta fonction chez php.net il faut un module supplémentaire ?
je présise que j'ai tjrs utilisé la methode énnoncé dans le sujet...
Marsh Posté le 28-07-2002 à 19:13:25
Sorry, c:
$lang=$HTTP_GET_VARS("lang" )
puis ensuite echo($lang)
Marsh Posté le 28-07-2002 à 19:20:32
ben maintenant c'est "Call to undefined function: array()", je pense qu'il y a une ruse dans un fichier de conf... phpmyadmin ne marche pas en mode "cookie based", je vais installer une autre version de php...
Marsh Posté le 28-07-2002 à 19:31:47
Tu peux me faire voir le code php de la page appelante et de l'appelée stp ?
Marsh Posté le 28-07-2002 à 19:32:25
et ben ça refonctionne avec php 4.06
ps : c'est peut etre par ce que j'avais changé un parametre de trop dans mon php.ini, mais je pense pas.
En tou cas merci kfman pour ton aide
Marsh Posté le 28-07-2002 à 19:33:48
ben en fait je marque directement le ?lang=de dans la barre d'adresse de IE (c'est pour faire des tests) apres se sera sous forme de lien dans mes pages.
Marsh Posté le 28-07-2002 à 19:37:55
je sais que dans la version 4.2.0 et ultérieure, la fonction des variables autoglobales est désactivée.
Donc tu peux pas faire directement echo($lang)
Toutefois en faisant avec le $http_get_vars, ça devrait logiquement marcher... je me suis servis de cette méthode dans mes scripts et c ok...
Marsh Posté le 28-07-2002 à 19:41:06
et tu sais s'il y a un moyen de les réactiver, sinon, toutes mes pages sont dead si j'upgrade
curieux que le $http_get_vars ne fonctionne pas (ni sous 4.06 ni sous 4.22) sur ma config
Marsh Posté le 28-07-2002 à 19:50:28
Me semble que c la variable register_globals dans php.ini
Mais bon doit avoir erreur dans ton source...
Marsh Posté le 28-07-2002 à 22:44:17
Depuis PHP4.1.0, pour accéder aux variable passés en url on doit passer par les tablo associatifs $_GET['mavariable'] $_POST['mavariable'] $_SERVER['mavariable'] $_SESSIONS['mavariable'] $_COOKIES['mavariable'] ....
Il faut mettre à jours ses scripts car dans les prochaines versions de php, le paramètres est sur off par défaut et disparaitra bientot
Marsh Posté le 28-07-2002 à 23:01:03
kfman a écrit a écrit : $http_get_vars, ça devrait logiquement marcher |
ce n'est pas une méthode mais un tableau . donc $HTTP...["var"]
Marsh Posté le 28-07-2002 à 23:03:28
heu, comme j'ai un peu des mouffles, est ce que tu peux me dire comment faire pour utiliser ces (tablo associatif) dans mon exemple ?
Marsh Posté le 28-07-2002 à 23:18:20
Il vaut mieux utilisé $_GET['lang'] car HTTP_GET ne marcheras plus dans le futur !!
Marsh Posté le 28-07-2002 à 23:51:17
merci
PS : où trouver ce genre d'info (j'ai un bouquin mais c'est PHP 3...) ?
Marsh Posté le 29-07-2002 à 09:00:38
Marsh Posté le 28-07-2002 à 19:01:02
j'ai :
Un windows 2000
Un IIS5
PHP 4.22
et lorsque que je met : http://dev.toto.net/test.php?lang=de
et que, dans mon fichier php je fais echo($lang) et ben j'ai pas de retour
PS : j'ai bu un peu de champagne hier soir, il est donc possible qu'un truc con m'échappe...
PPS : SVP pas de "passe sous apache" / "passe sous linux" : si j'utilise iis, il y a une raison, mes autres install des meme produits (version anterieure de php) ont toujours fonctionnées...
Merci d'avance