7月 232011
 

セレクトボックスは複数選択肢の中から一つしか選ぶことができませんが、
Ctrlキーを押しながら複数選択できるものをリストボックスと呼びます。
複数の値を送信するため、name属性に配列を指定するだけでよく、
これまでと同じ方法で取得できます。

【form.html】リストボックス送信のテスト
<form id=”form1″ name=”form1″ method=”post” action=”view.php“>
  趣味:
  <br />
<select name=”hobby[]” size=”10″ multiple=”multiple”>
  <option value=”読書”>読書</option>
  <option value=”映画鑑賞”>映画鑑賞</option>
  <option value=”音楽鑑賞”>音楽鑑賞</option>
  <option value=”カラオケ”>カラオケ</option>
  <option value=”ガーデニング”>ガーデニング</option>
  <option value=”写真”>写真</option>
  <option value=”ドライブ”>ドライブ</option>
  <option value=”ゴルフ”>ゴルフ</option>
  <option value=”サーフィン”>サーフィン</option>
  <option value=”旅行”>旅行</option>
  <option value=”釣り”>釣り</option>
  <option value=”料理”>料理</option>
  </select>
  <input type=”submit” value=”送信” />
</form>

【view.php】
<?php
if(isset($_POST[hobby])){
 print “私の趣味は以下の通りです。<br /><br />”;
 foreach($_POST[“hobby”] as $hobby)
 {
  print $hobby;
  print “<br />”;
 }
}else{
 print “私の趣味はありません。”;
}
?>

リストボックスの取得 → POST

7月 152011
 

セレクトボックスは複数の選択肢の中から一つだけを選ぶため、
配列にする必要はありません。
取得方法はこれまで同様、name属性に指定した名前をキーとして取得します。
セレクトボックスにはオシャレにjQueryを組み込みました。

【form.html】
チェックボックス送信のテスト
<form id=”form1″ name=”form1″ method=”post” action=”view.php“>
  都道府県:
  <br />
  <select name=”ken” id=”pref”>
  <option value=”” selected=”selected”/></option>
  <optgroup label=”北海道”>
  <option value=”北海道” />北海道</option>
  </optgroup>
  <optgroup label=”東北”>
  <option value=”青森県” />青森県</option>
  <option value=”岩手県” />岩手県</option>
・・・以下省略
  <optgroup label=”沖縄”>
  <option value=”沖縄県” />沖縄県</option> 
  </optgroup>
  </select>
  <br /><input type=”submit” value=”送信”/>
</form>

【view.php】
<?php
if($_POST[ken] <> “”){
 print “都道府県:”;
 print $_POST[“ken”];
}else{
 print “都道府県を選んでください。”;
}
?>

セレクトボックスの取得 → POST

7月 092011
 

ラジオボタンは複数の選択肢の中から一つしか選ぶことができません。
そのため、チェックボックスのときのように配列を使う必要はなくなりますが、
取得方法はこれまで同様、name属性に指定した名前をキーとして取得します。

【form.html】
チェックボックス送信のテスト
<form id=”form1″ name=”form1″ method=”post” action=”view.php“>
  性別:
  <br />
  <input name=”gender” type=”radio” value=”男” />男<br />
  <input name=”gender” type=”radio” value=”女” />女<br />
  <input type=”submit” value=”送信” />
  <input name=”usei_id” type=”hidden” value=”0001″ />
</form>

【view.php】
<?php
if(isset($_POST[gender]) && ($_POST[gender]==”男” || $_POST[gender]==”女”)){
 print “性別:”;
 print $_POST[gender];
}else{
 print “性別を選んでください。”;
}
?>

ラジオボタンの取得 → POST

7月 022011
 

チェックボックスは複数選択することが出来るため、
配列を使ってデータを受け渡しますが、
取得方法はname属性に指定した名前をキーとして取得します。

【form.html】
チェックボックス送信のテスト
<form id=”form1″ name=”form1″ method=”post” action=”view.php“>
  私の趣味:
  <br />
<input name=”hobby[]” type=”checkbox” value=”スポーツ” />スポーツ<br />
<input name=”hobby[]” type=”checkbox” value=”映画鑑賞” />映画鑑賞<br />
<input name=”hobby[]” type=”checkbox” value=”音楽鑑賞” />音楽鑑賞<br />
<input name=”hobby[]” type=”checkbox” value=”読書” />読書<br />
<input name=”hobby[]” type=”checkbox” value=”パソコン” />パソコン<br />
<input name=”hobby[]” type=”checkbox” value=”ショッピング” />ショッピング<br />
<input type=”submit” value=”送信” />
<input name=”usei_id” type=”hidden” value=”0001″ />
</form>

【view.php】
<?php
if(isset($_POST[“hobby”])){
 $hobby = implode(‘と’,$_POST[hobby]);
 print “私の趣味は”;
 print $hobby;
 print “です。”;
}else{
 print “私の趣味はありません。”;
}
?>

チェックボックスの取得 → POST

6月 232011
 

phpを使えば確認ボタンをクリックした場合と、
戻るボタンをクリックした場合で表示される結果を変えることが可能です。
isset関数を使って、どっちのボタンのクリックされたかを取得し、
if文でブロック分けを行い、それぞれの結果として表示されるようにコードを書きます。

【form.html】
複数行テキスト送信のテスト
<form id=”form1″ name=”form1″ method=”post” action=”confirm.php“>
  名前:
    <br />
  <input name=”name” type=”text” size=”30″ maxlength=”20″ />
  <br />
  本文:<br />
  <textarea name=”honbun” cols=”30″ rows=”5″></textarea>
  <br />
  <input type=”submit” value=”送信” />
  <input name=”usei_id” type=”hidden” value=”0001″ />
</form>

【confirm.php】
確認画面
<form id=”form1″ name=”form1″ method=”post” action=”view.php“>
<?php
if($_POST[“name”]==””){
 print “名前を入力してください。” ;
}else{
 print $_POST[“name”].”さんからのメッセージ” ;
 print “<br/><br/>”;
 print “本文:<br/>”;
 print nl2br($_POST[“honbun”]);
}
?>
<br />
<input name=”confirm” type=”submit” value=”確認” />
<input name=”back” type=”submit” value=”戻る” />
<input name=”user_id” type=”hidden” value=”<?php print $_POST[“usei_id”] ?>” />
<input name=”name” type=”hidden” value=”<?php print $_POST[“name”] ?>” />
<input name=”honbun” type=”hidden” value=”<?php print $_POST[“honbun”] ?>” />
</form>

【view.php】
<?php
if(isset($_POST[“confirm”])){ //確認ボタンがクリックされた時
?>
<?php
if($_POST[“name”]==””){
 print “名前を入力してください。” ;
}else{
 print $_POST[“name”].”さんからのメッセージ” ;
 print “<br/><br/>”;
 print “本文:<br/>”;
 print nl2br($_POST[“honbun”]);
}
?>

<?php
}elseif(isset($_POST[“back”])){ //戻るボタンがクリックされた時
?>
複数行テキスト送信のテスト
<form id=”form1″ name=”form1″ method=”post” action=”confirm.php”>
  名前:
    <br />
  <input name=”name” type=”text” size=”30″ maxlength=”20″ value=”<?php print $_POST[“name”] ?>” />
  <br />
  本文:<br />
  <textarea name=”honbun” cols=”30″ rows=”5″ ><?php print $_POST[“honbun”] ?></textarea>
  <br />
  <input type=”submit” value=”送信” />
<input name=”user_id” type=”hidden” value=”<?php print $_POST[“usei_id”] ?>” />
</form>

<?php
}else{ //上記以外の場合
?>
エラーです。<br />
直接このページを表示させることはできません。<br />
<a href=”form.html”>form.html</a>からアクセスしてください。

<?php
}
?>

送信ボタンの取得 → POST

6月 182011
 

ブラウザに表示されない入力項目にhidden属性というものがあります。
name属性に指定した名前をキーとして取得します。
ここではテスト、サンプルとして架空のユーザーIDをhidden属性でデータ取得していますが、
たとえブラウザには表示されていなくても、HTMLファイル内にはコードが書き込まれるため、
IDやパスワードをこのような方法で送信するのはセキュリティに問題有りです。

【form.html】
複数行テキスト送信のテスト
<form id=”form1″ name=”form1″ method=”post” action=”confirm.php”>
  名前:
    <br />
  <input name=”name” type=”text” size=”30″ maxlength=”20″ />
  <br />
  本文:<br />
  <textarea name=”honbun” cols=”30″ rows=”5″></textarea>
  <br />
  <input type=”submit” value=”送信” />
  <input name=”usei_id” type=”hidden” value=”0001″ />
</form>

【confirm.php】
確認画面
<form id=”form1″ name=”form1″ method=”post” action=”view.php”>
<?php
print $_POST[“name”].”さんからのメッセージ” ;
print “<br/><br/>”;
print “本文:<br/>”;
print nl2br($_POST[“honbun”]);
?>
<br />
<input name=”” type=”submit” value=”確認” />
<input name=”user_id” type=”hidden” value=”<?php print $_POST[usei_id] ?>” />
<input name=”name” type=”hidden” value=”<?php print $_POST[name] ?>” />
<input name=”honbun” type=”hidden” value=”<?php print $_POST[honbun] ?>” />
</form>

【view.php】
<?php
if($_POST[“name”]==””){
 print “名前を入力してください。” ;
}else{
 print $_POST[“name”].”さんからのメッセージ” ;
 print “<br/><br/>”;
 print “本文:<br/>”;
 print nl2br($_POST[honbun]);
}
?>

非表示項目の取得 → POST

6月 112011
 

複数行を入力したテキストエリアからデータを取得する場合も方法は同じです。
name属性に指定した名前をキーとして取得します。

【form.html】
複数行テキスト送信のテスト
<form id=”form1″ name=”form1″ method=”post” action=”view.php”>
  名前:
    <br />
  <input name=”name” type=”text” size=”30″ maxlength=”20″ />
  <br />
  本文:<br />
  <textarea name=”honbun” cols=”30″ rows=”5″></textarea>
  <br />
  <input type=”submit” value=”送信” />
</form>

【view.php】
<?php
if($_POST[“name”]==””){
 print “名前を入力してください。” ;
}else{
 print $_POST[“name”].”さんからのメッセージ” ;
 print “<br/><br/>”;
 print “本文:<br/>”;
 print nl2br($_POST[honbun]); 
}
?>
複数行テキストの取得 → POST

6月 042011
 

資料請求、お問い合わせ、会員・ユーザー情報登録、
ブログの書き込み、クチコミ、ツイート、、、
WEBでは文字を入力して送信することはよくあります。
入力したデータを受けとってページへの表示やデータベースへの登録や
メールへ書き込んで送信するにはphpが必要です。
formタグの中でmethodとactionを指定し、
view.phpの中で受け取ったデータを使用します。
methodにはPOSTとGETを指定することが出来ますが、
POSTを指定した場合は$_POST[“キー”]、
GETを指定した場合は$_GET[“キー”]で取得できます。
name属性に指定した名前をキーとして取得します。

【form.html】
<form id=”form1″ name=”form1″ method=”post” action=”view.php“>
  名前:<input name=”name” type=”text” size=”30″ maxlength=”20″ />
  <br />
  <input type=”submit” value=”送信” />
</form>

【view.php】
<?php
if($_POST[“name”]==””){
 print “名前を入力してください。” ;
}else{
 print $_POST[name].”さん、こんにちは!”  ;
}
?>
テキストの取得 → POST
テキストの取得 → GET