検索
ホームページバックエンド開発PHPの問題PHPページの送信方法の違いは何ですか?

PHP ページでデータを送信するには、get と post の 2 つの方法があります。違いは次のとおりです: 1. get で送信する場合は、URL アドレスのパラメーターを確認できますが、post で送信する場合は、URL アドレスのパラメーターを確認できません。アドレスバーのパラメータを参照してください; 2. Get は安全ではありません。post は安全です; 3. Get 送信はパラメータを 1 つずつ送信することであり、post 送信はすべてのパラメータを全体としてまとめて送信することです; 4. 一般的に送信を取得します255 バイトを超えず、ポスト送信のサイズはサーバーによって異なります; 5. Get は非常に柔軟で、ページジャンプがある限りパラメータを渡すことができますが、post は柔軟性がありません。

PHPページの送信方法の違いは何ですか?

このチュートリアルの動作環境: Windows7 システム、PHP8 バージョン、DELL G3 コンピューター

php ページでは、次の 2 つの方法があります。データの送信:get モードと post モード。

<form method="post" action=""></form>
<form method="get" action=""></form>

get メソッドと post メソッドの違い

1. 外観

get Submitアドレス

PHPページの送信方法の違いは何ですか?

post Submit にパラメータが表示され、アドレス バー

PHPページの送信方法の違いは何ですか?

## にパラメータが表示されます。

#2. セキュリティ

get は安全ではありませんが、post は安全です

get によって送信されたデータは URL バーに表示されますが、post によって送信されたデータは目に見えないので投稿の方が安全です。

3. 提出の原則

get 提出はパラメータを 1 つずつ提出することです

post 提出はすべてのパラメータをまとめて提出することです

4. 送信されたデータのサイズ

取得送信は通常 255 バイトを超えません

投稿送信のサイズはサーバーによって異なります

// 在php.ini中,可以配置post提交的大小
post_max_size = 8M

5. 柔軟性

get は非常に柔軟です。ページジャンプがある限りパラメータを渡すことができます。

post は柔軟性がありません。投稿には次の参加が必要です。フォーム

1、 html跳转
   <a>跳转</a>

2、JS跳转
<script>
	location.href='index.php?name=tom&age=20';
	location.assign('index.php?name=tom&age=20');
	location.replace('index.php?name=tom&age=20');
</script>

3、PHP跳转
header('location:index.php?name=tom&age=22')

概要:

外観送信データ サイズセキュリティ提出原則#提出データをXML形式に変換して提出します 柔軟性があり、ページジャンプがある限り、データの取得と受け渡しが可能です

##GET
POST
アドレスに渡されたパラメータと値が表示されます アドレスにはデータが表示されませんbar
少量のデータを送信します。ブラウザごとに最大値が異なります。IE は 255 文字です。 大量のデータを送信します。データの最大値は、php.ini 設定ファイルを変更することで設定できます。 送信後データの最大値
Low High
提出データとデータは独立です #非常に柔軟です
柔軟性がありません

服务器数据的三种方式

$_POST:数组类型,保存的POST提交的值
$_GET:数组类型,保存的GET提交的值
$_REQUEST:数组类型,保存的GET和POST提交的值

根据提交表单数据的方式不同,获取表单数据的方法也有所不同:get方式可以使用预定义变量$_GET来获取;post方式可以使用预定义变量$_POST来获取;如果不知道 form 表单通过哪种方式提交数据,就可以使用预定义变量$_REQUEST来获取,它两种方式的数据都可以获取。

下面就来一一了解:

1、使用预定义变量$_GET快速获取表单数据(form表单需要设置为method="get"

在程序的开发过程中,由于 GET 方法提交的数据是附加到 URL 上发送的,因此在 URL 的地址栏中将会显示“URL+用户传递的参数”类型的信息,如下所示:

http://url?name1=value1&name2=value2 ...
  • name1、name2 为表单元素的名称(有表单元素的name属性设置),value1、value2 为表单元素的值。url和表单元素之间用“?”隔开,而多个表单元素之间用“&”隔开,每个表单元素的格式都是“name=value”,固定不变。

我们添加一下user.html文件的表单看看URL 的地址栏

PHPページの送信方法の違いは何ですか?

PHPページの送信方法の違いは何ですか?

user.php文件中可以直接使用预定义变量$_GET来获取数据,$_GET 全局变量是一个关联数组,数组的键名为表单元素 name 的值,数组的值为对应表单的值。(注只要是 URL 中的参数都可以使用 $_GET 获取。)

<?php
var_dump($_GET);
?>

PHPページの送信方法の違いは何ですか?

可以使用$_GET['键名']的方式来一一获取每个表单元素的值:

<?php
header("content-type:text/html;charset=utf-8");
echo "用户名为:".$_GET['user']."<br>生日为:".$_GET['bday'];
?>

PHPページの送信方法の違いは何ですか?

2、使用预定义变量$_POST快速获取表单数据(form表单需要设置为method="post"

post方法不依赖于 URL,不会将传递的参数值显示在地址栏中。

$_POST 全局变量也是一个关联数组,数组的键名为表单元素 name 的值,数组的值为对应表单的值。

<?php
header("content-type:text/html;charset=utf-8");
echo "用户名为:".$_POST['user']."<br>生日为:".$_POST['bday'];
?>

PHPページの送信方法の違いは何ですか?

3、使用预定义变量$_REQUEST快速获取表单数据

$_REQUEST 全局变量是一个包含了  $_POST、$_GET 和 $_COOKIE 的数组,数组结构与 $_POST 和 $_GET 类似。

<?php
header("content-type:text/html;charset=utf-8");
var_dump($_REQUEST);
echo "用户名为:".$_REQUEST['user']."<br>生日为:".$_REQUEST['bday'];
?>

PHPページの送信方法の違いは何ですか?

小结: 

 1、在开发的时候,如果明确是post提交就使用$_POST获取,如果明确get提交就用$_GET获取 

 2、request获取效率低,尽可能不要使用,除非提交的类型不确定的情况下才使用。

推荐学习:《PHP视频教程

以上がPHPページの送信方法の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール