Maison  >  Article  >  développement back-end  >  Comment utiliser $_get et $_post en php

Comment utiliser $_get et $_post en php

青灯夜游
青灯夜游original
2021-07-26 19:31:513630parcourir

En php, "$_get" est utilisé pour collecter les valeurs du formulaire avec "method="get"", c'est-à-dire pour recevoir les données du formulaire soumises à l'aide de la méthode GET dans le formulaire "$_post" ; utilisé pour collecter les valeurs de la "method="get"" ="post"", c'est-à-dire obtenir les données du formulaire envoyées par la requête POST.

Comment utiliser $_get et $_post en php

L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 7.1, ordinateur DELL G3

Utilisez les méthodes get et post en PHP pour recevoir la valeur du formulaire, et la réception PHP peut être définie sous forme de formulaire et adresse de réception.

Les méthodes get et post présentent principalement les différences suivantes.

  • get ajoute la file d'attente de données de paramètres à l'URL pointée par l'attribut d'action du formulaire soumis. Les valeurs correspondent à chaque champ du formulaire un à un et peuvent être vues dans l'URL. Post utilise le mécanisme de publication HTTP pour placer chaque champ du formulaire et son contenu dans l'EN-TÊTE HTML et le transmettre à l'adresse URL pointée par l'attribut d'action. L'utilisateur ne peut pas voir ce processus.

  • get La quantité de données transférées est faible et ne peut pas dépasser 2 Ko. Cela est principalement dû à la limite de longueur de l'URL. La quantité de données envoyées par courrier est relativement importante, et la valeur par défaut est généralement illimitée.

  • get la sécurité est très faible, la post-sécurité est plus élevée, mais l'efficacité d'exécution est meilleure que la méthode post.

  • get est la méthode de formulaire par défaut.

Il est recommandé d'utiliser la méthode de soumission de données post lorsque les données transmises contiennent des informations confidentielles, la méthode get lors de la requête de données et la méthode post lors de l'ajout, de la modification ou de la suppression de données.

Variable globale $_POST

La méthode POST ne dépend pas de l'URL et n'affiche pas la valeur du paramètre transmise dans la barre d'adresse. De plus, la méthode POST peut transférer des données vers le serveur sans restrictions. Toutes les informations soumises sont transmises en arrière-plan. Les utilisateurs ne peuvent pas voir ce processus du côté du navigateur, la sécurité est donc relativement élevée. Par conséquent, la méthode POST est plus adaptée pour envoyer certaines informations importantes (telles que le numéro de carte de crédit) ou une quantité relativement importante de données au serveur.

Conseils : Par défaut, la taille maximale des informations envoyées par la méthode POST est de 8 Mo, qui peut être modifiée ultérieurement en modifiant la valeur de post_max_size dans le fichier de configuration php.ini.

La variable globale $_POST de PHP est spécifiquement utilisée pour obtenir les données du formulaire envoyées par la requête POST. Sa structure de données est un tableau associatif. Le nom de clé du tableau est la valeur du nom de l'élément de formulaire et la valeur du tableau est la valeur du formulaire correspondant. Dans le processus de développement actuel du programme, lorsque l'attribut méthode du formulaire spécifie l'utilisation de POST pour la transmission de données, nous devons utiliser $_POST pour obtenir les données du formulaire.

$_POST L'utilisation des variables globales est la même que celle des tableaux ordinaires. Les données qu'il contient sont directement accessibles sous la forme de $_POST['key value']. ​​​​Vous trouverez ci-dessous un exemple simple à démontrer.

【Exemple】Utilisez la variable globale $_POST pour obtenir les données transmises dans le formulaire.

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
</head>
<body>
    <form action="index.php" method="post">
        姓名:<input type="text" name="name" placeholder="请输入姓名"><br>
        性别:<input type="radio" name="sex" value="男">男
              <input type="radio" name="sex" value="女">女<br>
        爱好:<input type="checkbox" name="hobby[]" value="read">阅读
              <input type="checkbox" name="hobby[]" value="travel">旅游
              <input type="checkbox" name="hobby[]" value="sport">运动
              <input type="checkbox" name="hobby[]" value="internet">上网<br>
        职业:<select name="job">
                    <option value="coder">程序员</option>
                    <option value="teacher">教师</option>
                    <option value="doctor">医生</option>
                    <option value="other">其它</option>
              </select><br>
        <input type="submit" value="提交">&emsp;&emsp;<input type="reset" value="重置">
    </form>
</body>
</html>
<?php
    if(!empty($_POST)){
        echo &#39;提交成功!<br><pre class="brush:php;toolbar:false">&#39;;
        var_dump($_POST);
    }
?>

Exécutez le code ci-dessus, remplissez les informations appropriées dans la zone de saisie et cliquez sur le bouton Soumettre pour transmettre les informations renseignées dans le formulaire au programme PHP. Ensuite, le programme PHP peut recevoir les informations transmises dans le formulaire via $_POST et traiter les informations. Par exemple, il peut enregistrer les données dans la base de données ou les afficher dans le navigateur, etc. Le code détaillé ne sera pas démontré. essayez-le vous-même.

Variable globale $_GET

La variable globale $_GET est similaire à la variable globale $_POST introduite précédemment. Elle est utilisée pour recevoir les données de formulaire soumises à l'aide de la méthode GET dans le formulaire. dans le formulaire formulaire. Méthode par défaut pour les propriétés. Les données du formulaire soumises à l'aide de la méthode GET sont ajoutées à l'URL et envoyées au serveur dans le cadre de l'URL.

Pendant le processus de développement du programme, puisque les données soumises par la méthode GET sont attachées à l'URL et envoyées, des informations du type "URL + paramètres passés par l'utilisateur" seront affichées dans la barre d'adresse de l'URL, comme indiqué ci-dessous :

http://url?name1=value1&name2=value2 ...

Parmi eux, url est l'adresse de réponse du formulaire (comme http://c.biancheng.net), name1 et name2 sont les noms des éléments du formulaire, et value1 et value2 sont les valeurs des éléments du formulaire. L'URL et les éléments du formulaire sont séparés par "?", et plusieurs éléments du formulaire sont séparés par "&". Le format de chaque élément du formulaire est "name=value", qui est fixe.

Étant donné que les différents navigateurs ont des restrictions différentes sur la longueur de l'URL, lorsque vous utilisez la méthode GET pour soumettre des données, vous devez faire attention à la taille des données. Si la longueur des données dépasse la limite du navigateur, les données seront. tronqué. Cela entraîne une perte de données. Les restrictions de longueur d'URL des navigateurs grand public sont indiquées dans le tableau suivant :

游览器 最大长度(字符数)
Internet Explorer 2083 
Firefox  65536
chrome 8182
Safari 80000
Opera 190000

$_GET 全局变量与 $_POST 的结构相似,同样是一个关联数组,数组的键名为表单元素 name 的值,数组的值为对应表单的值。$_GET 不仅仅可以获取 form 表单的数据,只要是 URL 中的参数都可以使用 $_GET 获取。

另外一点需要注意的是:在 PHP 中使用 $_POST 或者 $_GET 获取表单数据时,是区分大小写的,所以在开发过程中应该注意不能忽略了字母的大小写。

【示例】使用 $_GET 全局变量获取 form 表单中传输的数据。

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
</head>
<body>
    <form action="index.php" method="get">
        姓名:<input type="text" name="name" placeholder="请输入姓名"><br>
        性别:<input type="radio" name="sex" value="男">男
              <input type="radio" name="sex" value="女">女<br>
        爱好:<input type="checkbox" name="hobby[]" value="read">阅读
              <input type="checkbox" name="hobby[]" value="travel">旅游
              <input type="checkbox" name="hobby[]" value="sport">运动
              <input type="checkbox" name="hobby[]" value="internet">上网<br>
        职业:<select name="job">
                    <option value="coder">程序员</option>
                    <option value="teacher">教师</option>
                    <option value="doctor">医生</option>
                    <option value="other">其它</option>
              </select><br>
        <input type="submit" value="提交">&emsp;&emsp;<input type="reset" value="重置">
    </form>
</body>
</html>
<?php
    if(!empty($_GET)){
        echo &#39;提交成功!<br><pre class="brush:php;toolbar:false">&#39;;
        var_dump($_GET);
    }
?>

推荐学习:《PHP视频教程

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn