PHP は、インタラクティブで動的な Web アプリケーションの作成に使用できる、広く使用されているサーバーサイド スクリプト言語です。 PHP アプリケーションを開発する場合、通常、フォームを介して処理するためにユーザー入力データをサーバーに送信する必要があります。ただし、フォームデータがPHPで送信されたものであるかどうかを判断する必要がある場合があるので、この記事ではその判断方法を紹介します。
POST投稿の判定方法を紹介する前に、まずPOST投稿とは何かを理解しましょう。 Web 開発では、通常、フォームを通じてユーザーが入力したデータを収集し、このデータを処理のためにサーバーに送信します。フォームでは、GET と POST という 2 つの方法を使用してデータを送信できます。
GET メソッドは URL 経由でデータをサーバーに渡し、送信されたデータは URL で確認できますが、これは安全性が低くなります。POST メソッドはデータを HTTP リクエスト本文にカプセル化して送信します。サーバーにデータを隠蔽できるため、セキュリティが向上します。その中でもフォームデータの送信にはPOSTメソッドがよく使われます。
PHP では、$_POST グローバル変数を通じてフォームによって送信されたデータを取得できます。この変数は連想配列であり、その添え字はフォーム内の入力要素の name 属性値であり、その値はユーザーが入力したデータです。
では、現在 POST リクエストがあるかどうかを確認するにはどうすればよいでしょうか? $_SERVER['REQUEST_METHOD'] の値が 'POST' であるかどうかを判断することで、現在のリクエスト メソッドが POST であるかどうかを判断できます。
以下は、現在 POST リクエストがあるかどうかを判断し、POST によって送信されたデータを取得する方法を示すサンプル コードです。
if ($_SERVER['REQUEST_METHOD'] == 'POST') { // 获取POST提交的数据 $username = $_POST['username']; $password = $_POST['password']; // 处理表单数据 // ... } else { // 显示页面 // ... }
上記のサンプル コードでは、まずメソッドが現在のリクエストが POST である場合、はいの場合は POST によって送信されたデータを取得して処理し、それ以外の場合はページを表示します。
開発中に、POST リクエストを正しく判断できなくなる一般的なエラーが発生することがあります。いくつかのエラーと解決策を以下に示します。解決策:
form タグを使用するのを忘れました
HTML では、form タグを使用してフォームをカプセル化する必要があります。 formタグを使用しない場合、フォームデータを正常に送信できません。解決策: フォームタグを追加します。
送信アドレスエラー
フォームには送信アドレスを指定する必要があり、アドレスが間違っているとデータを送信できません通常は。解決策: 送信アドレスが正しいかどうかを確認してください。
#form 要素の name 属性が間違っています
POST で送信されたデータを取得する場合、form 要素の name 属性を使用する必要があります。 form要素を対応する配列Subscriptとして使用する場合、name属性が間違っていると、送信されたデータを取得できません。解決策: form 要素の name 属性値が正しいかどうかを確認してください。フォーム メソッドの使用エラー
POST リクエストを判断する場合、$_SERVER['REQUEST_METHOD'] を使用してリクエスト メソッドを取得する必要がありますメソッドが間違っている場合($_GETなど)を使用するとリクエストメソッドが正しく取得できず、POSTリクエストであるかどうか判断できません。回避策: 正しいメソッドを使用してリクエスト メソッドを取得します。以上が投稿が PHP で送信されたかどうかを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。