PHP入門

フォームを扱う

全333コースを10日間無料で

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
テキストフィールドやテキストエリアなど、Webページを見ている人が情報を入力できる「フォーム」。ここでは、PHPでそのフォームを受信する方法を学習します。これにより、ユーザーとコミュニケーションを取ることができるようになります。
講師:
12:12

字幕

ここでは、フォームを扱うということでHTMLで作ることができるフォームのテキストフィールドとかテキストエリア、チェックボックスやラジオボタンといったようなフォームをPHP で扱うというスクリプトを作ってみたいと思います。まず、その前にここでは少しファイルの見た目を整えるためにここでは、スタイルシートや画像をいくつか作りました。こちらは Safari の方にドラッグ&ドロップしますとこのような見た目の HTML を予め準備していますのでここで作り込んで各ファイルを作っていくことにしましょう。MAMP はこのように画像ですとかスタイルシートというのはそのままアップロードすることができます。app MAMP htdocsそしてフォルダを1つ作りましてここにこのように作ったファイル群をコピーしてみます。そして URL としましてはHTTP://localhost:8888/そして、lesson02-03 ですね。index.html というURL になります。こちらでアクセスしていただきますと同じように表示されているということです。なので、ここを PHP に変えてPHP のプログラムを組み込むことで作ることができます。 では、MAMP をこのように起動してweb サーバーを起動していることを確認してエディターソフトから編集していきましょう。今回は今、予め作ってあるこのファイルを編集していきますのでこれを DreamWeaver にドラッグ&ドロップしていきます。こちらがテンプレートのHTMLを開いたところになりますのでここに例えば「フォームを扱う」ここにH1要素があるので、ここにも「フォームを扱う」と記入することでそのページのタイトルを出すことができます。content という div 要素の中にそのプログラムですとかHTMLの本体を書いていきます。では、ここでは、例えば、form タグを書いていきましてまず、form タグにはaction 属性、method 属性というのを指定することができます。この辺りは HTML の基本になりますのでちょっとこの講座では割愛しますがまず、action 属性にはそのフォームの送信先を指定します。ここでは、後ほどファイルを作りますので一旦空欄にしておきましょう。そして、method 属性、ここには get またはpost というのを記述していきます。標準は get になりますのでここでまず get を指定しておきましょう。 そして1つ label を書きましてここでに名前と言ったようなものを書きます。そして input そしてタイプが text になります。そして name 属性をつけます。ここでは myname ですね。そして size 属性、これを 35 としてvalue 属性、これを空欄とします。そして、このように label を閉じる最後に form を閉じていきます。もう1つここで必要なのがinput の submit です。value としてそのボタンのlabel を指定します。これでまず HTML が出来上がりました。そしてこれで index.html というファイル名で上書きをします。ブラウザでアクセスするとこのようにwebページが作られます。「フォームを扱う」ということでこれが label です。そしてここにテキストフィールドができて「送信する」ボタンがあります。では、今作ったこのテキストフィールドに例えば、自分の名前を入力して「送信する」ボタンをクリックした時その送信された「たにぐちまこと」という今の名前が画面上に表示されるようなスクリプトを作っていきましょう。それでは、新しいファイルを1つ作成します。 そして内容を今作ったこのテンプレートファイルにあわせてすべてコピーペーストしていきます。この内容ですね、この部分を書き換えていきますので一度内容を消していただいてここに例えば p タグで「あなたのお名前は」こうします。そして「〜ですね」ということでここに今記入した名前が表示されるようなプログラムを作ってみたいと思います。では、まず、先にプログラムだけ紹介しますとここにPHPの基本タグである<?PHPそして ?>を記述しまして中に print function を書きます。そして、($_ そして get と書きます。そしてこちら大括弧、またはカギ括弧と呼ばれる記号を書きます。続いてクォーテーション記号に続いてmyname と書きます。後は大括弧、そしてこちらの普通の括弧をそれぞれ閉じていきます。これは入れ子の状態ですね。ここで各括弧が閉じられて print の括弧がここで閉じられると言うことです。後は:を書いてこれでプログラムの完成です。では、このファイルを名前をつけて保存します。Command+S で名前をつけて保存できます。Windows の場合はCtrl+S です。では、今 index.html つまり入力の画面があるlesson02-03 というファイルの中にここには input_do というような名前でファイルを付けましょう。 拡張子は、.php になります。このボタンをクリックしてinput_do.php ができるのですけどこの index.html とinput_do.php を接続しなければなりません。どうするかといいますとform の action 属性の所に今作ったinput_do.php というファイル名を書くことでこの送信するボタンをクリックした時の送信先としてここに input_do.php と記述することで今作った input_do.php というこちらのスクリプトに接続されます。では、実際に動きを確認してみましょう。web ブラウザで、まず最初に、index.html に接続します。もし画面にすでに表示されていても一度再読み込みを押して新しいファイルにしてください。そしてテキストフィールドの内容に自分の名前を記入していきます。そしてこちらにある送信ボタンをクリックしましょう。そうしますと、「あなたの名前はたにぐちまことですね」という風に出てきます。こちら、名前を例えば「山田太郎」というような形で変えていって「送信する」をクリックすれば当然、この内容は「山田太郎」という形で名前が変わります。では、スクリプトの内容を詳しく紹介していきましょう。 まず、この print というfunction については前のチャプターでもご紹介していますが画面に何かを表示するというスクリプトです。そしてここに決まり文句のように$_get というのが書かれています。両端に ” 記号がありません。これは、前のチャプターでご紹介したとおりこの内容を PHP が処理をしてから表示してくださいという意味です。” があるとそのまま表示されてしまいますので気をつけてください。$_get というのは フォームの内容を取得するという特別なこちらは変数という物なのですが変数については後のチャプターで詳しく説明していきます。ここでは、決まり文句だと思っていただいて構いません。$_get と書きまして、大括弧に続いてここに記述するのは前の画面でフォームの name 属性に指定しているこちらと一致します。例えば、myname という name 属性のついたテキストフィールドの内容を取得したい場合には$_get のこの内容にもmyname と記述します。こうすることで、このテキストフィールドに入力した内容がここに取得できるようになります。後は、それがprint fucntion によって画面に表示するという形になっていますのでこれによってこちらのフォームに入力した内容が次の画面に表示されているということです。 後はこれの繰り返しです。例えば、ここにテキストエリアを1つ追加してみたいと思います。br で改行しまして例えば、lable として「ご意見」ということでbr します。ここでテキストエリアを使って見ましょう。name 属性としてmessage そしてテキストエリアは cols 属性そして rows 属性を指定することができます。そして、textarea を閉じるという形でbr をそれぞれ入れていきましょう。フォームの画面としましては再読み込みをするとこのような形になります。では、この「ご意見」というところに記入された内容を取得するにはどうすれば良いかと言いますとこちらです。p 要素に続いてご意見の内容ということでまた br を入れます。そしてここに PHP で print get としてmessage と記入します。これで完成になりますね。それでは実際に動かしてみましょう。この「フォームを扱う」というところにお名前そして、ご意見の内容それぞれ記入していきます。そして「送信する」ボタンをクリックしますと次の画面でこのように「ご意見」の内容「名前」は先ほどの通り名前が記入されています。そして「ご意見」の内容が記入されている「ご意見」の内容が表示されたのはここの $_get の後括弧の中が message になっています。 先ほどの入力画面の name 属性も message になっていますのでこのように一致させることでフォームのコントロールを表示させることができるということですね。このように name 属性の内容をそれぞれ書き分けることで項目をいくつ作っても次の画面で正常に取得することができますのでここで重要なのはフォームを作る時にこの name 属性を忘れないようにすることと他のコントロールと重ならないようなオリジナルな名前をつけてあげるということがポイントです。そして次の input_do.php ではその先ほど指定した名前をname 属性の名前を確実に指定してあげるということが重要になります。

PHP入門

このコースでは動きのあるWebサイトでショッピング、友人との写真を共有、キーワードによる情報検索など便利な仕組みを作るための技術であるPHPについて解説します。これまでプログラミングに触れたことがない方でも、ちょっとしたプログラムを自分で作ることができるようになります。

4時間56分 (29 ビデオ)
現在、カスタマーレビューはありません…
 
ソフトウェア・トピック
価格: 3,990
発売日:2014年01月29日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。