



|
Manuel PHP
|
|
Table : .Essentiel.Variables pré-définies .Portée des variables .Les variables dynamiques .Variables externes à PHP |
language variables externalVariables externes à PHPFormulaires HTML (GET et POST)Lorsqu'un formulaire est envoyé à un script PHP, toutes les variables du formulaire seront automatiquement disponibles dans le script. Par exemple, considérons le formulaire suivant :
Suivant votre configuration particulière et vos préférences, vous avez plusieurs méthodes pour accéder aux variables du formulaires. Voici quelques exemples :
Utiliser un formulaire de type GET est similaire, hormis le fait que
vous deviez utiliser les variables pré-définies de GET à la place.
GET s'applique aussi à la QUERY_STRING
(les informations disponibles après le '?' dans une URL).
De ce fait, par exemple,
http://www.example.com/test.php?id=3
contient les données de GET, qui sont accessibles via
Comme nous l'avons déjà dis, avant PHP 4.2.0, la valeur par défaut de register_globals était on. Dans PHP 3, elle était toujours à On. La communauté PHP n'encourage personne à utiliser cette directive et privilégie la valeur off et un code accordé.
PHP comprend aussi les tableaux dans le contexte des formulaires. (voir aussi la FAQ). Vous pouvez, par exemple, grouper des variables ensemble ou bien utiliser cette fonctionnalité pour lire des valeurs multiples d'un menu déroulant. Par exemple, voici un formulaire qui se poste lui-même des données, et les affiche :
En PHP 3, la syntaxe des tableaux HTML est limitée aux tableaux uni-dimensionnels. En PHP 4, ces limitations ont été levées. Nom de variables IMAGE de type SUBMITLors de la soumission d'un formulaire, il est possible d'utiliser une image au lieu d'un bouton standard, comme ceci :
Lorsque l'utilisateur clique sur cette image, le formulaire
associé est envoyé au serveur, avec deux données supplémentaires,
Cookies HTTP
PHP supporte les cookies HTTP de manière totalement
transparente, comme défini dans les
spécifications de Netscape. Les cookies
sont un mécanisme permettant de stocker des données
sur la machine cliente à des fins d'identification de
l'utilisateur. Vous pouvez établir un cookie grâce à
la fonction setcookie(). Les cookies
font partie intégrante des en-têtes HTTP et donc
la fonction setcookie() doit être
appelée avant que le moindre affichage ne soit envoyé
au navigateur. C'est la même restriction que pour la fonction
header(). Les données contenus dans les cookies
sont alors disponibles dans les tableaux de cookies appopriés, comme
Si vous souhaitez assigner plusieurs valeurs à un seul cookie, il vous faut ajouter les caractères [] au nom de votre cookie. Par exemple :
Cela va créer deux cookies distincts bien que Il est à noter qu'un cookie remplace le cookie précédent par un cookie de même nom tant que le "path" ou le domaine sont identiques. Donc, pour une application de panier, vous devez implémenter un compteur et l'incrémenter au fur et à mesure. C'est-à-dire :
Cas des points dans les noms de variablesTypiquement, PHP ne modifie pas les noms des variables lorsqu'elles sont passées à un script. Cependant, il faut noter que les points (.) ne sont pas autorisés dans les noms de variables PHP. Pour cette raison, jetez un oeil sur :
$varname, suivie par l'opérateur de concaténation,
et suivie encore par la chaîne sans guillemets
(une chaîne sans guillemets et qui n'a pas de signification
particulière). Visiblement, ce n'est pas ce qu'on attendait...
Pour cette raison, il est important de noter que PHP remplacera automatiquement les points des noms de variables entrantes par des soulignés (underscore). Détermination du type des variablesParce que PHP détermine le type des variables et les convertit (généralement) comme il faut, ce n'est pas toujours le type de variable que vous souhaîtez. PHP inclut des fonctions permettant de déterminer le type d'une variable : gettype(), is_array(), is_float(), is_int(), is_object() et is_string(). Lisez également le chapître sur les types.
|

