今度はformタグを利用時によく使われる関数var_dumpを利用していきたいと思います。8月25日記事
目次
変数を表示させるのにechoやprint関数を利用する以外に、var_dump関数を利用します。配列やPOSTメソッドやGETメソッドによるグローバル変数を出力させることにも便利です。
preタグを利用するとわかりやすいです。
例:フォームにて送信された内容が「どういう名前で」「どういうものが入っているのか」を表示させる。
送信側
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>無題ドキュメント</title> </head> <body> <form action="confirm.php" method="post"> <dl> <dt>タイトル</dt><dd><input type="text" name="title"></dd> <dt>内容</dt><dd><textarea name="contents" cols="40" rows="6"></textarea></dd> </dl> <input type="submit" name="submit" value="送信"> </form> </body> </html>
受信側
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>無題ドキュメント</title> </head> <body> <?php var_dump($_POST); ?> <pre><!--preタグを付けると見やすくなるよ。--> <?php var_dump($_POST); ?> </pre> </body> </html>
時々、formのnameの名前間違いをします。新しいファイルを作りフォームの内容を受信したい場合は必ずvar_dump関数で確認するようにしましょう。
変数を扱った場合、どんなものが入っているか想像できないことがあります。そんな場合、変数をechoで確認してもいいですが、数字の場合や文字を直接代入する方法でも構いません。とにかく細かく切り分けてかんがえることが重要です。
プログラム、そして表示がよくても
タグ的に間違いな場合はよくあります。
そんな場合はHTMLのソースも確認するようにしましょう。時々閉じるタグが二つ入っていたり、なかったりする場合があります。
最初はよくテキストエディタでコードを書いていったりする場合がありますが、私はあまり推奨しません。確かにテキストエディタを使いこなせばemacsやサクラエディタでも高機能なものを使えるようになってくると思いますが、プログラムを始める人がそのようなテキストエディタを使いこなせるとは限りません。
Dreamwaver(有償)やaptanaやeclipse(無償)など利用すると標準でカッコ()の数が間違っている場合、エラーなどを指摘してくれて便利です。
以上