Posted by : Izumikawa Fukumi 2013年12月7日土曜日

今回PHPの"GET"への理解が浅い方の為にGETの使い方と便利な使い方をご紹介したいと思います。


そもそもGETの使い道が分からない方は多いのではないでしょうか?(初心者に限る)
恐らく初心者さんの半分はPOSTを使って値を送っていると思います。

そこでGETとPOSTの違いを初めに紹介したいと思います。



 簡単に言うとGETとPOSTはどちらも値を送信しますが、GETは値が見えてPOSTは見えないと言う事が一番分かりやすいかと思います。次にGETはURLに直接埋め込んで送信出来てPOSTはフォームから送信されると言う事です。

 いまいちGETの使い方が分かりませんよね? 「値はフォームから送信しちゃえばいいじゃん」と言う考えを持つ方は少なくないと思います。 ですが、GETにもそれなりの使い道があって存在しています。 例えば、ブログなどでも使われています。他にもGoogleの検索にも使われています。 

 ブログで例えると、記事ごとに1つのページを作るとデータ量を無駄に大きくしてしまいますよね?でもGETでブログ記事のデータを送れば1つのphpファイルで複数の記事を表示する事が出来ます。ただGTEで送られた値を元に記事ファイルを読み込むだけなので無駄なHTMLファイルを作らなくても、すむわけです。



私のWebサイトのブログでもGETで記事ファイルを管理しています。

記事一覧ページに記事を一覧表示してリンクにはGETで記事IDを埋め込んでいます。
そのリンクをクリックしたらGETでPHPに値が送られて、送られて来た記事IDを元に記事を探して表示すると言う形をとっています。






この様にリンクに値を埋め込むにはGETを使うと便利なのです。


では一応以下に値を埋め込む例を書きます。




「ファイルパス.php?name=値」と言う形で埋め込みます。

複数の値を埋め込むには&で区切る事が出来ます。

「sample.php?id=abc&pass=12345&name=いずみん」の様に何個でも値を送る事が出来ます。

ただ上記の例の様にidやpassなどを送ってログイン出来るシステムにすると悪意のあるユーザーが簡単にidとpassを特定出来てしまいます。

GETの弱点は見える為大事な値はSESSIONやPOSTなどで扱いましょう。


■GETをPHPで受け取るサンプル

    if($_GET['sample'] !== ""){
        print 'GETで送られて来た値は' . $_GET['sample'] . 'です。';
    }else{
        print 'GETに値が存在しません。';
    }



- Copyright © I aim to creator. - Hatsune Miku - Powered by Blogger - Designed by Johanes Djogan -