ホームページ  >  記事  >  バックエンド開発  >  詳細説明 2: PHP と Web ページ間の対話の例

詳細説明 2: PHP と Web ページ間の対話の例

coldplay.xixi
coldplay.xixi転載
2020-08-07 16:30:172637ブラウズ

詳細説明 2: PHP と Web ページ間の対話の例

#まえがき

フォームについては、「PHP 学習ノート - PHP と Web ページの相互作用」のメモで説明されています。 1" 入力フィールドマーク、選択フィールドマーク、テキストフィールドマークの書き方など、フォームの一部の属性。以下の内容は、各種コントロールの値の取得など、フォームデータの取得方法やPHPデータの転送方法についてです。 。

関連する学習の推奨事項:

php プログラミング (ビデオ)

フォームを挿入

フォームを送信する前にフォームが必要です。フォームが作成された後、フォームを Web ページに挿入できます。コードは次のとおりです。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>在普通的Web页中插入表单</title>
<style type="text/css">
body,td,th {
  font-size: 12px;
}
</style>
</head>
<body>
<form action="demo_1.php" method="post" name="form1" enctype="multipart/form-data">
 <table width="405" height="24" border="1" cellpadding="1" cellspacing="1" bordercolor="#FFFFFF" bgcolor="#999999">
  <tr bgcolor="#FFCC33">
   <td width="103" height="25" align="right">商品名称:</td>
   <td height="25" align="left"><input name="product" type="text" id="user" size="20" maxlength="100"></td>
  </tr>
  <tr bgcolor="#FFCC33">
   <td height="25" align="right">市场:</td>
   <td height="25" colspan="2" align="left"><input name="from" type="radio" value="海外" checked>
    海外
    <input type="radio" name="from" value="国内">
    国内</td>
  </tr>
  <tr bgcolor="#FFCC33">
   <td width="103" height="25" align="right">编号:</td>
   <td width="289" height="25" colspan="2" align="left"><input name="code" type="text" id="code" size="20" maxlength="100"></td>
  </tr>
  <tr bgcolor="#FFCC33">
   <td height="25" align="right">种类:</td>
   <td height="25" colspan="2" align="left"><select name="select">
     <option value="电器">电器</option>
     <option value="家具">家具</option>
     <option value="化妆品">化妆品</option>
     <option value="图书" selected>图书</option>
     <option value="服饰">服饰</option>
     <option value="宠物">宠物</option>
     <option value="计算机">计算机</option>
    </select></td>
  </tr>
  <tr bgcolor="#FFCC33">
   <td height="25" align="right">商品图片: </td>
   <td height="25" colspan="2" align="left"><input name="photo" type="file" size="20" maxlength="1000" id="photo"></td>
  </tr>
  <tr bgcolor="#FFCC33">
   <td height="25" align="right">商品描述: </td>
   <td height="25" colspan="2" align="left"><textarea name="intro" cols="28" rows="3" id="info"></textarea></td>
  </tr>
  <tr align="center" bgcolor="#FFCC33">
   <td height="25" colspan="3"><input type="submit" name="submit" value="提交">
      
    <input type="reset" name="submit2" value="重置"></td>
  </tr>
 </table>
</form>
<?php
header("Content-Type:text/html;  charset=gb2312");
?>>
</body>
</html>

In HTMLおよび 本体の間にフォームを追加>

実行結果:

詳細説明 2: PHP と Web ページ間の対話の例

フォーム データの取得

主な取得方法フォームデータ クロックメソッドには、POST()メソッドとGET()メソッドの2つがあります。

フォームのメソッド属性で指定します。

POST メソッドを使用してフォームを送信します

POST メソッドを適用する場合、formからPOSTできます。 POST メソッドは URL に依存しないため、アドレス バーには表示されません。 POSTメソッドはサーバーへのデータ転送を無制限に行うことができ、送信された情報はすべてバックグラウンドで送信されるため、ブラウザ側からはその処理を見ることができず、セキュリティが高いです。したがって、POST メソッドは、機密データ (クレジット カード番号など) や大容量のデータをサーバーに送信する場合に適しています。

例:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=gb2312"
    />
  <title>PHP语言基础</title>

</head>
<body>
<form action="index.php" method="post" name="form1" enctype="multipart/form-data">
  <table width="300" border="1" cellpadding="10" cellspacing="0">
    <tr>
      <td height="30">编号:
        <input type="text" name="code" size="20"/>
        <input type="submit" name="subimt" value="提交"/>
      </td>
    </tr>
  </table>
</form>
<?php
header("Content-Type:text/html;  charset=gb2312");
?>
</body>
</html>

実行結果:

詳細説明 2: PHP と Web ページ間の対話の例

送信ボタンをクリックした後、アドレス バーにパラメーターが表示されないことがわかりました。私たちは提出しました。

GET メソッドを使用してフォームを送信します

GET メソッドは、
フォームのメソッド属性のデフォルトのメソッドです。 。 GET メソッドを使用して送信されたフォーム データは URL に追加され、URL の一部としてサーバーに送信されます。プログラムの開発過程では、GETメソッドで送信したデータをURLに添付して送信するため、URLのアドレスバーには「URLユーザー渡パラメータ」が表示されます。

上記の例の
フォームのメソッド属性を get に指定すると、プログラムを実行した結果は次のようになります。ボタンをクリックした後のアドレスバー「通過しますか?」 'キーと値のペアを「&」で区切って接続します。

詳細説明 2: PHP と Web ページ間の対話の例PHP パラメータを渡す一般的な方法

フォーム データの取得は、実際にはさまざまなフォーム要素のデータを取得することです。

タグ内の name は、すべての form 要素が持つ属性であり、この form 要素の名前になります。使用する場合は、name 属性を使用して、対応する value 属性を取得する必要があります。 PHP でパラメータを渡す一般的な方法は 3 つあります: $_POST[]グローバル変数

$_GET[]グローバル変数

$_SESSION []Variable
  1. $_POST[]グローバル変数

PHP の $_POST[] 事前定義変数を使用してフォーム要素を取得します値と形式は次のとおりです:

$_POST[name]
例:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=gb2312"
    />
  <title>PHP语言基础</title>

</head>
<body>
<form action="index.php" method="post" name="form1" enctype="multipart/form-data">
  <table width="300" border="1" cellpadding="10" cellspacing="0">
    <tr>
      <td height="30">编号:
        <input type="text" name="code" size="20"/>
        <input type="submit" name="subimt" value="提交"/>
      </td>
    </tr>
  </table>
</form>
<?php
header("Content-Type:text/html;  charset=gb2312");
$value=$_POST[&#39;code&#39;];
echo "编号:".$value;
?>
</body>
</html>
実行結果:

$ _GET[] グローバル変数詳細説明 2: PHP と Web ページ間の対話の例

PHP は $_GET[] 定義済み変数を使用して、GET メソッドを通じて渡された値を取得します。使用形式は次のとおりです:

   $_GET[name]
Example :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=gb2312"
    />
  <title>PHP语言基础</title>

</head>
<body>
<form action="index.php" method="get" name="form1" enctype="multipart/form-data">
  <table width="300" border="1" cellpadding="10" cellspacing="0">
    <tr>
      <td height="30">编号:
        <input type="text" name="code" size="20"/>
        <input type="submit" name="subimt" value="提交"/>
      </td>
    </tr>
  </table>
</form>
<?php
header("Content-Type:text/html;  charset=gb2312");
$value=$_GET[&#39;code&#39;];
echo "编号:".$value;
?>
</body>
</html>
実行結果:

##$_SESSION[] 変数

詳細説明 2: PHP と Web ページ間の対話の例
#Use $_SESSION[] 変数はフォーム要素の値を取得できます。形式は次のとおりです:

$_SESSION[name]

$_SESSION[] パラメータ受け渡しメソッドを使用して取得した変数値は、どのページでも使用できます保存後。ただし、この方法はシステム リソースを消費するため、読者は注意して使用することをお勧めします。 ケース

最後に、メモの最初のデモに基づいて完全なケースを作成します:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  <title>在普通的Web页中插入表单</title>
  <style type="text/css">
    body, td, th {
      font-size: 12px;
    }
  </style>
</head>
<body>
<form action="demo_1.php" method="post" name="form1" enctype="multipart/form-data">
  <table width="405" height="24" border="1" cellpadding="1" cellspacing="1" bordercolor="#FFFFFF" bgcolor="#999999">
    <tr bgcolor="#FFCC33">
      <td width="103" height="25" align="right">商品名称:</td>
      <td height="25" align="left"><input name="product" type="text" id="user" size="20" maxlength="100"></td>
    </tr>
    <tr bgcolor="#FFCC33">
      <td height="25" align="right">市场:</td>
      <td height="25" colspan="2" align="left"><input name="from" type="radio" value="海外" checked>
        海外
        <input type="radio" name="from" value="国内">
        国内
      </td>
    </tr>
    <tr bgcolor="#FFCC33">
      <td width="103" height="25" align="right">编号:</td>
      <td width="289" height="25" colspan="2" align="left"><input name="code" type="text" id="code" size="20"
                                    maxlength="100"></td>
    </tr>
    <tr bgcolor="#FFCC33">
      <td height="25" align="right">种类:</td>
      <td height="25" colspan="2" align="left"><select name="select">
          <option value="电器">电器</option>
          <option value="家具">家具</option>
          <option value="化妆品">化妆品</option>
          <option value="图书" selected>图书</option>
          <option value="服饰">服饰</option>
          <option value="宠物">宠物</option>
          <option value="计算机">计算机</option>
        </select></td>
    </tr>
    <tr bgcolor="#FFCC33">
      <td height="25" align="right">商品图片:</td>
      <td height="25" colspan="2" align="left"><input name="photo" type="file" size="20" maxlength="1000"
                              id="photo"></td>
    </tr>
    <tr bgcolor="#FFCC33">
      <td height="25" align="right">商品描述:</td>
      <td height="25" colspan="2" align="left"><textarea name="intro" cols="28" rows="3" id="info"></textarea>
      </td>
    </tr>
    <tr align="center" bgcolor="#FFCC33">
      <td height="25" colspan="3"><input type="submit" name="submit" value="提交">
          
        <input type="reset" name="submit2" value="重置"></td>
    </tr>
  </table>
</form>
<?php
header("Content-Type:text/html;  charset=gb2312");

if ($_POST[submit] != "") {
  echo "商品清单:";
  echo " <br><br>商品名称:" . $_POST[&#39;product&#39;];
  echo " <br><br>  市场:" . $_POST[from];
  echo " <br><br>  编号:" . $_POST[&#39;code&#39;];
  echo " <br><br>  种类:" .$_POST[&#39;select&#39;];
  $path = &#39;./upfiles/&#39;. $_FILES[&#39;photo&#39;][&#39;name&#39;];
  move_uploaded_file($_FILES[&#39;photo&#39;][&#39;tmp_name&#39;],$path);
  echo " <br><br>商品图片:" .$path;
  echo " <br><br>商品描述:" .$_POST[&#39;intro&#39;];
}


?>
</body>
</html>
実行結果:

move_uploaded_file メソッドを使用して、現在のパスの下にある upfiles フォルダーに画像をアップロードします。

関連する学習に関する推奨事項: プログラミング ビデオ

以上が詳細説明 2: PHP と Web ページ間の対話の例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はjb51.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。