2011-04-29 2 views
1

Je suis un débutant PHP. Je ne vois pas la réponse à cette question dans le manuel PHP.

Je sais ce que fait un superglobal REQUEST, mais est-ce que 'faire' quelque chose de construit en PHP? J'ai trouvé ce code dans un tutoriel ...

if (isset($_REQUEST['do']) && ($_REQUEST['do'] == 'add')) 

Est-ce que 'do' signifie simplement que le formulaire a été soumis? Dans le cas d'informations provenant d'un lien ...?

Répondre

2

Toutes les valeurs définies dans $_COOKIE, $_GET et $_POST montreront en $_REQUEST ce qui signifie qu'une forme qui présente des données à la page a probablement un élément d'entrée avec une clé de 'do' comme dans cet exemple:

<input type="hidden" name="do" value="add" /> 

Bien sûr, il pourrait être tout élément de forme html avec un nom de do, ou tout cookie avec un nom de do, ou tout simplement une chaîne de requête statique avec un nom de do.

+1

merci, c'est ce que je voulais savoir. "do" est une valeur définie par l'utilisateur. – Leahcim

2

Cela signifie qu'un nom GET/POST/COOKIE (GPC) a été envoyé.

Le manuel PHP est très bon, et peut vous donner beaucoup de réponses:

http://php.net/manual/en/reserved.variables.request.php

Lorsque vous soumettez une "demande" (url avec COOKIES persistants, les variables GET à base d'URL et POST'd variables à partir de formulaires ou d'autres moyens), votre navigateur envoie des en-têtes HTML contenant des paires clé/valeur identifiables par type (GPC), puis par nom (pour obtenir une valeur).

donc une variable GET peut être présentée par:

http://www.example.com/?do=yes

Et le serveur avec PHP vous permettra d'accéder à cette do variables par:

$do = $_GET['do']; 

Ou:

$do = $_REQUEST['do']; 

Ma préférence est d'utiliser t La méthode réelle, il a été présenté, à savoir, l'appel $_GET['do'], pas $_REQUEST.

+0

J'ai vu cette page dans le manuel, mais cela n'explique pas si "do" fait toujours partie de REQUEST. La réponse de zzzzBov m'a dit ce que je voulais savoir. A savoir, ce "faire" est défini par le programmeur. – Leahcim

+0

'GPC' est contrôlé par la requête, c'est-à-dire ce qui est inclus dans l'en-tête de la requête qui est soumise au serveur. GET fait partie de l'URL, POST est des données qui sont "attachées" à la demande, et COOKIEs sont dans l'en-tête lui-même. Il n'y a pas de clé/valeur spécifique qui fait juste partie des requêtes any/all. Si le serveur ou l'utilisateur (par formulaire ou Javascript) ne le met pas là, cela ne fait pas partie de la requête. –

1

Ce serait quelque chose soumis via GET ou POST. $ _REQUEST combine les deux.