OVH Cloud OVH Cloud

debut en php

9 réponses
Avatar
Nicolas
Je débute en php et quand je tape ce script

<?

echo "$HTTP_USER_AGENT<br>";


?>

ça me donne

Notice: Undefined variable: HTTP_USER_AGENT in c:\program
files\easyphp1-7\www\essai\essai.php on line 68

9 réponses

Avatar
Jedi121
"Nicolas" a écrit le 01/11/2003 :
Je débute en php et quand je tape ce script

<?
echo "$HTTP_USER_AGENT<br>";
?>

ça me donne

Notice: Undefined variable: HTTP_USER_AGENT in c:program
fileseasyphp1-7wwwessaiessai.php on line 68


Tu es sous Easyphp 1.7 et depuisla 1.7 register_globals est à Off.
Il faut donc que tu utilises $_SERVER[HTTP_USER_AGENT];
Et puisque tu débutes je te dirais bien d'en profiter pour prendre
l'habitude de démarrer tes scripts par <?php plutôt que par <? tout
seul.

Avatar
Le Fou
Jedi121 a écrit

Et puisque tu débutes je te dirais bien d'en profiter pour prendre
l'habitude de démarrer tes scripts par <?php plutôt que par <? tout
seul.


Peux-tu expliquer pourquoi ?
Quand j'ai appris le PHP (il y a 2, 3 ans) on me disait justement que <?php
serait de plus en plus remplacé par <? et aujourd'hui tu dis l'inverse...
Qui a raison ? ;-))

--
A'tchao

Le Fou
http://club.exocet.free.fr/ - http://www.ffessm-cd84.com/
http://perso.club-internet.fr/ehiller/

Avatar
Jedi121
"Le Fou" a écrit le 02/11/2003 :
Peux-tu expliquer pourquoi ?
Quand j'ai appris le PHP (il y a 2, 3 ans) on me disait justement que <?php
serait de plus en plus remplacé par <? et aujourd'hui tu dis l'inverse...
Qui a raison ? ;-))


Je ne sais pas qui a raison, mais je me conforme à la documentation
PHP.
En effet le préfixe <? n'est pas forcément activé (short_open_tag dans
php.ini que tu ne maitrises pas, du coup ton code n'est peut-être pas
portable). Deplus, ce n'est pas conforme au XML et donc au XHTML qui se
développe.

La doc officielle :
http://fr.php.net/manual/fr/language.basic-syntax.php#language.basic-syntax.phpmode
Extrait :
Même si les balises courtes sont activées dans le fichier de
configuration php.ini-dist, leur utilisation est déconseillée.

Avatar
Olivier Miakinen

echo "$HTTP_USER_AGENT<br>";

Il faut donc que tu utilises $_SERVER[HTTP_USER_AGENT];



C'est presque ça...

Plus exactement, c'est $_SERVER['HTTP_USER_AGENT'];
(ne pas oublier les guillemets, simples ou doubles)


Avatar
[ Psykokwak ]
cest normal

pour appeler les variables on utilise leur tableaux associatif (les
superglobals)

donc :
$_SERVER['HTTP_USER_AGENT']
ou
$_ENV['HTTP_USER_AGENT']

maintenant, le message que php donne siginifi que la variable
$HTTP_USER_AGENT ne possede pas de valeur!
ce nest pas une erreur, cest une remarque.
pour empecher laffichage des Notice en php il suffit de changer le mode de
rapport des erreur :
http://fr3.php.net/manual/fr/function.error-reporting.php

:)
Avatar
Jerome
echo affiche une variable, rien d'autre, donc pas du code html, tu confond
echo et print.
fait çà et ca marchera :

<? print "$HTTP_USER_AGENT <br>" ?>


"Nicolas" a écrit dans le message de
news:3fa4082f$0$6970$
Je débute en php et quand je tape ce script

<?

echo "$HTTP_USER_AGENT<br>";


?>

ça me donne

Notice: Undefined variable: HTTP_USER_AGENT in c:program
fileseasyphp1-7wwwessaiessai.php on line 68


Avatar
Le Fou
Jedi121 a écrit
(...)
La doc officielle :

http://fr.php.net/manual/fr/language.basic-syntax.php#language.basic-syntax.

phpmode
Extrait :
Même si les balises courtes sont activées dans le fichier de
configuration php.ini-dist, leur utilisation est déconseillée.


Ok ! Merci.
Je vais faire un "chercher/remplacer" sur toutes mes pages ;-)

--
A'tchao

Le Fou
http://club.exocet.free.fr/ - http://www.ffessm-cd84.com/
http://perso.club-internet.fr/ehiller/

Avatar
[ Psykokwak ]
echo affiche une variable, rien d'autre, donc pas du code html, tu confond
echo et print.
fait çà et ca marchera :

<? print "$HTTP_USER_AGENT <br>" ?>



n'importe nawak
depuis quand echo affiche une variable ?
depuis quand echo ou print ne retourne pas du code html?
je crois que cest toi qui confond tout

ps : ta solution ne marchera pas mieu

:)

Avatar
Bobe
[ Psykokwak ] nous a susurré le 03/11/2003 22:50:


n'importe nawak



bis


depuis quand echo ou print ne retourne pas du code html?



Depuis quand les données envoyées par un script php sont elles forcément du
html ?
Tout dépend du content-type associé à ces données.

--
Bobe (Aurélien Maille)
http://webnaute.net

"la vie d'un geek est un combat perpétuel contre l'imperfection"