GETメソッドでデータを送る

  • 2008/06/19(木) 00:00:00

日記

 はてなアイドルをコンパイルしてきた。リアルで。楽しすぎてやばかった><


$_GETを使ってプロフィールページにidデータを渡す

geek DataBase - index.php PHP部分のコードだけ貼るね!


1 <?php
2   mysql_connect('localhost','ユーザ名','パスワード');
3   mysql_select_db('データベース名');
4   mysql_query("set names utf8");
5
6   $sql="select * from geekDB";
7   $result=mysql_query($sql);
8   $rows=mysql_num_rows($result);
9
10  while ($item = mysql_fetch_array($result)) {
11
12   echo "・";
13   echo " ";
14   echo "<a href="http://geekdb.jp/geek.php?id=";
15   echo $item['id'];
16   echo "">";
17   echo $item['name'];
18   echo "</a><br />";
19   }
20 ?>



2,3行目は以前と同様。MySQLに接続→データベースを指定。
PHPを使ってMySQLを操る


4行目。
文字コードをセットするクエリを送信。最初、文字化けしまくりングで激怒していた。





で、この1行を入れれば解決か?というと、そうでもない。まだ化ける。なぜだ。

<meta http-equiv="Content-Type" content=="text/html; charset=Shift_JIS"/>


実はヘッダで charset=Shift_JIS と指定してしまっていたのね。

htmlちゃん 「文字コードは Shift_JIS で出力ですね!」
MySQLくん 「否!文字コードは utf8 と指示されたぞ!」

という具合に、2人(?)がケンカをしてしまった(´・ω・`)
けんかをやめて!2人を止めて!私のために争わないで・・・!

解決策つ charset=utf8

同一ファイル内の文字コードは統一しなくちゃ。htmlの文字コードをutf8に直して、いっちょあがり!


6,7,8行目も、PHPを使ってMySQLを操るの時と一緒。


10行目から始まる while 文も、構造的には前回と同じなんだけど、ポイントは14〜16行目。
マークは”エスケープ文字”といって、ダブルクォーテーションの中でダブルクォーテーションを使う場合は、その直前にを入れてエスケープしなきゃいけないらしい。パッと見、ややこしいよね(`・3・)
PHPを考えずに、htmlタグだけで書いてみよう。

<a href="http://geekdb.jp/geek.php?id=$item['id']">


ギークさんの個別ページへのリンクタグ。
個別ページは1人1人別々に作るのではなく、geek.phpという1ページだけ。
このページは、名前など各項目のフォーマットを用意した単なる受け皿。
肝心のデータは、データベースから引っ張ってくる。
その引っ張る際に必要となるキーが、$item['id']。ギークさんの id を手がかりに、データを呼び出す。
$_GET を使ってるんだけど、$_GET の話はむかぁーしチラっと書いたような・・・
1日目 見つけて 私のセキュリティホール

あれ、ちゃんとアウトプットしてなかった。ごめん><;;

GETメソッドによるデータの送り込み方
URLの後ろに「?変数名=値」を追記することで、その変数名と値を「URL」に送り込むことができます。
複数の変数を送り込みたい場合は「?変数名=値&変数名=値」のように書きます。

参考:MySQL入門以前

今回のケースで言うと、http://geekdb.jp/geek.php というURLの後ろに ?id=$item['id'] と追記することで、変数 id とその値(ギークさんのid)をgeek.phpに送り込んでいる。


これ、表示されたときはマジで感動した!「ハッ!」ってリアルで言った。一瞬、呼吸止まった。
私が書いたコードが、私のデータベースからデータを呼び出してくれた!ブラウザに表示してくれた!!
ミラクルガールすぎる・・・・!!プログラミング超たのしいいいいいいいい!!!!!

LINEで送る

この記事に対するトラックバック

この記事のトラックバックURL

-

管理人の承認後に表示されます

  • From: |
  • 2013/12/10(火) 09:09:21

-

管理人の承認後に表示されます

  • From: |
  • 2013/12/10(火) 03:00:59

-

管理人の承認後に表示されます

  • From: |
  • 2013/12/09(月) 05:53:26

-

管理人の承認後に表示されます

  • From: |
  • 2013/12/05(木) 10:29:42

-

管理人の承認後に表示されます

  • From: |
  • 2013/12/04(水) 20:16:46

-

管理人の承認後に表示されます

  • From: |
  • 2013/11/15(金) 12:53:10

-

管理人の承認後に表示されます

  • From: |
  • 2013/11/12(火) 11:48:07

-

管理人の承認後に表示されます

  • From: |
  • 2013/11/06(水) 23:36:49

-

管理人の承認後に表示されます

  • From: |
  • 2013/11/06(水) 16:56:06

-

管理人の承認後に表示されます

  • From: |
  • 2013/11/05(火) 08:58:30

-

管理人の承認後に表示されます

  • From: |
  • 2013/11/05(火) 00:33:18

-

管理人の承認後に表示されます

  • From: |
  • 2013/11/04(月) 16:20:32

-

管理人の承認後に表示されます

  • From: |
  • 2013/11/03(日) 05:20:37

-

管理人の承認後に表示されます

  • From: |
  • 2013/11/03(日) 01:12:26

アルファギーク一覧が見やすくなりました(・∀・)

e-51更新情報 あかさた こと黒田洋介さんを追加しました! e-117akasata (あかさた、本名:黒田洋介) - geekDataBase ”な” を取ってナナシ、という由来には 「なるほどっ」 と手を打ってしまった(´∀`) e-149ギークの顔写真を...

URLが涼しくなったよヽ( ・∀・)ノ

もうすぐ夏ですね!ちょっと涼んでみませんか♪ e-51 更新情報 ひがやすおさんを追加しました! 毎回思うんだけど、アルファギークって知れば知るほど魅力的。ありがとうございましたっ! e-149 CoolなURLはじめました♪ e-147

この記事に対するコメント

>クリボウさん
はっ、転機ミスです!すみません!
ご指摘ありがとうございました!!

転記ミス?

ブログへの転記ミスかもしれないんですが、
content=="text/html; charset=Shift_JIS"
の「==」がおかしいのではないかと。

秘密のコメント

ブログ管理人への秘密コメントです

  • 投稿者: -
  • 2008/06/19(木) 12:27:20
  • [編集]

この記事にコメントする

管理者にだけ表示を許可する