作者別: chie

PHP_GET_データの受け取り

GET送信されたデータを受け取る

method=”GET” を使ってフォームからGET送信することができます。
このデータを取得するには 「$_GET」を使います。GET送信されたデータはURLの一部として送信されます。
例えば、「namae」という項目に「chie」というデータを入力した場合、
「http://localhost/sample.php?namae=chie」のようなURLになります。

テキストボックスに文字を入力し[送信]をクリックしてください。
<form method="get" action="">
<table>
<tr> 
<td><input type="text" name="namae"></td>
<td><input type="submit" value="送信" name="sub1"></td>
</tr>
</table>
</form> 
<?php
echo "入力内容 (\$_GET) → ".@$_GET["namae"]; 
?>
テキストボックスに文字を入力し[送信]をクリックしてください。

 

リンクからデータを受け取る

リンクするページから含まれるパラメータを受け取る場合、「$_GET[“key”]」のように、パラメータの項目を指定すると、参照可能になります。

<a href ="<?=$_SERVER["PHP_SELF"]?>?key=Access">Access</a><br>
<a href ="<?=$_SERVER["PHP_SELF"]?>?key=Excel">Excel</a><br>
<a href ="<?=$_SERVER["PHP_SELF"]?>?key=Word">Word</a><br>

<?php
echo "<p>リンクからのパラメータ → ".@$_GET["key"]; 
?> 
?key=Access”>Access
?key=Excel”>Excel
?key=Word”>Word

リンクからのパラメータ → “.@$_GET[“key”];
?>

フォームのデータをまとめて処理する

POST送信されたデータは、配列 $_POST に格納されています。foreach文を使うと、まとめて処理することができます。
フォームメールとかに役立ちそうですね。

お名前

Email

職種

ワープロ・入力
DTP
CAD
プログラム
その他
コメント

URL





送信データの表示

$val){
echo “
$idx = $val”;
}
?>

<form method=post action="">
  <table>
    <tr><td>お名前<td><INPUT SIZE="50" TYPE="text" NAME="namae"></tr> 
    <tr><td>Email<td><INPUT SIZE="50" TYPE="text" NAME="email"></tr>
  </table>
 <center>
 <table>
 <tr><td>職種<td><input type="radio" NAME="janre" value="WP">ワープロ・入力
   <input type="radio" NAME="janre" value="DTP">DTP
   <input type="radio" NAME="janre" value="CAD">CAD
   <input type="radio" NAME="janre" value="PROG">プログラム
   <input type="radio" NAME="janre" value="OTHER">その他
 </tr>
 <tr><td align="center">コメント<br><br><td><TEXTAREA NAME="comment" ROWS="10"    COLS="60"></TEXTAREA><p></tr>
 <tr><td>URL<td><INPUT size="60" TYPE="text" NAME="url"></tr>
 </table>

   <INPUT TYPE="submit" VALUE="送信">
   <INPUT TYPE="reset" VALUE="リセット">
 </FORM>
</center>
<hr>
<p>送信データの表示</p>

<?php
  foreach($_POST as $idx => $val){
  echo "<br>$idx = $val";
}
 ?>

PHP_POST_配列を使う

配列を使う

フォームからのデータを配列にセットするとまとめて処理をすることができます。
配列はこのページで学習しました。

ソースコードがとても見にくいと思います。ごめんなさい。
先頭の空白をすべて削除しています。
オンラインでスクリプトを書いているのですが、すぐに全角が入ってしまい動かなくなるのです(^^; おはずかしい

チェックボックスをオンにし[送信]をクリックしてください。

Dog
Cat
Cow
Monkey

“;
}
?>

【ソース】

チェックボックスをオンにし[送信]をクリックしてください。

<form method="post" action="">
<table>
<tr>
<td>
<input type="checkbox" name="check1[]" value="Dog">Dog
<input type="checkbox" name="check1[]" value="Cat">Cat
<input type="checkbox" name="check1[]" value="Cow">Cow
<input type="checkbox" name="check1[]" value="Monkey">Monkey
</td>
<td><input type="submit" value="送信" name="sub1"></td>
</tr>
</table>
</form>

<?php
for ($i = 0; $i < count(@$_POST["check1"]); $i++) {
echo $_POST["check1"][$i]."<br>";
} 
?>

PHP_フォーム POST送信

フォームを使うと、いろいろなことがWebでできるということが分かりました。
「あれもやりたい、これもやりたい」と脳裏に浮かびますが、少しずつネ

HTML5 Builder で作ったものをブログで実行させることはまだできません。
ブログはデータベースなので、インクルード方法が違うのだと思います。

できないことにくよくよと時間を取られていてもナンなので、先に進むことにします。

POST送信

フォームからPOST送信されたデータを受け取るには、「$_POST[“text1”]」のように項目を指定します。

テキストボックスに文字を入力し、[送信]をクリックしてください。
<form method="post" action="">
<table>
<tr>
<td><input type="text" name="text1"></td>
<td><input type="submit" value="送信" name="sub1"></td>
</tr>
</table>
</form>

<?php
echo "<p>入力内容 ".@$_POST["text1"]; 
?>
テキストボックスに文字を入力し、[送信]をクリックしてください。

入力内容  “.@$_POST[“text1”];
?>

PHP_フォームを使おう

HTMLで作成したページにPHPスクリプトを埋め込むことによって、動的に変化するページを作成することができます。フォームからの送信には通常のPOST送信のほか、URLにデータを含めて送信するGET送信があります。GET送信は、指定されたパラメータでアクセスしてもらう利便性がありますが、いたずらにクリックを呼ぶことがあります。 POST送信ではパラメータが表示されないので、いたずらを回避することができます。

メッセージが変化する

下記サンプルはボタンが押されるたびに、メッセージが変化する「動的」なページです。(GET送信)
ようやく動きました!
自分自身を呼び出すには自分自身のURLを記述する必要があります。この記事のURLをそのまま action に入れてみました。
自分自身のURLを入れたくないので、action に “#” を入れるという方法を見つけました。
いやぁ、難しいというか、奥が深いというか・・・

↓ボタンをクリックしてください。

【ソース】

<form method="GET" action="#">
<p>↓ボタンをクリックしてください。</p>
<p><input type="submit" value="「おはよう」" name="Good_morning"></p>
<p><input type="submit" value="「こんにちは」" name="Good_afternoon"></p>
<p><input type="submit" value="「こんばんは」" name="Good_evening"></p>
<table width="351" border="1" cellpadding="5">
<tr>
<td width="333">
<?php //スクリプトの始まり
error_reporting(0);
if ($_GET["Good_morning"]) { //最初のボタンが押されたら
print("Good morning\n"); //メッセージを表示する
} elseif ($_GET["Good_afternoon"]) { 
print("Good afternoon\n");
} elseif ($_GET["Good_evening"]) { 
 print("Good evening\n");
}
?>
</td>
</tr>
</table>
</form>

1行のテキストボックス

次のサンプルでは、1行目のテキストボックスに入れた値を、2行目にセットします。

(1) のテキストボックスに文字を入力して[送信]をクリックしてください。

(1)

(2)


>男性

>女性


【ソース】

<form method="GET" action="#"><p>
<input type="submit" value="男性" name="man">
<input type="submit" value="女性" name="woman"><p>

<input type="radio" value="1" name="seibetu" <? if ($_GET["man"]) { print("checked"); } ?>>男性</p>
<p><input type="radio" value="2" name="seibetu" <? if ($_GET["woman"]) { print("checked"); } ?>>女性</p>
</form>

チェックボックス

チェックボックスを「ON]」にします。

>男性

>女性

<p><input type="checkbox" value="ON" name="man" <? if ($_GET["man"] == "ON") { print("checked"); } ?>>男性</p>
<p><input type="checkbox" value="ON" name="woman" <? if ($_GET["woman"] == "ON") { print("checked"); } ?>>女性</p>