みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

mysqlからphpで値を取得する

こんにちは、php初心者のBlackwinglsです。

mysql上に住所録があります。
mysql> select count(*) from jyusyo where seibetu = 'man' and name = 'tanaka';
とやると男性の田中さんは、6名と表示されます。

これをphpでやりたいのですが、

$sql ="select count(*) from jyusyo where seibetu = 'man' and name = 'tanaka'";
$result = mysql_query($sql,$con);

ここから先の記述がよく分かりません。
mysql_fetch_array や mysql_result 等を試してみたんですが、基本的な事が分かってないので当然上手く動いてくれません(^^;)

どなたかアドバイスを頂けたら幸いです。

環境
apache 1.3.26
mysql 3.23.49
php 4.1.2


ps php初心者にお勧めのWebPageありましたらあわせて紹介ください。

投稿日時 - 2004-05-13 21:11:41

QNo.857584

困ってます

質問者が選んだベストアンサー

$sql ="select count(*) from jyusyo where seibetu = 'man' and name = 'tanaka'";
この部分を
$sql ="select count(*) as cnt from jyusyo where seibetu = 'man' and name = 'tanaka'";
$result = mysql_query($sql, $con);
といったように名称を付けて、
$cnt = mysql_result($result, "cnt", 0);
という風に取得すれば、$cntに6が入っているはずです。

また、
$sql ="select name from jyusyo where seibetu = 'man' and name = 'tanaka'";
$result = mysql_query($sql, $con);
としたあとに、
$name = array();
while( $rec = mysql_fetch_array($result) ) {
$name[] = $rec['name'];
}
とでもしてあげれば、名前の配列ができるはずです。

そうそう、書いていませんが、不要になったら、mysql_free_result($result)してくださいね。

それから、すでにPHPは4.3.6まででているので、どこかのタイミングで4.3.4くらいまでは上げた方がいいのではないでしょうか?

また、WebPageよりも、きちんと本を買って勉強なさった方がいいと思いますよ。
どうしてもWebでというのであれば、スクリプトサンプルなどをダウンロードして、少しずつ改良してみてはどうでしょうか?

間違いがありましたらご指摘ください。
ではでは☆

投稿日時 - 2004-05-13 23:14:55

お礼

Kanataさん、お久しぶりでございますm(__)m
と言っても覚えていないかも知れませんが・・・・・

今回の件は何気にいじっていたら欲しい結果が得られる状態になったのですが・・・・・・
何故、そういう結果が得られるのかは解っていません(自爆)
ご回答いただいたスクリプトは、なるほど納得ですね。
早速試してみたいと思います。

ps 本は3冊ほど購入したんですが、開くと寝てしまう癖があるもんですから・・・・・(笑)

投稿日時 - 2004-05-14 01:00:47

このQ&Aは役に立ちましたか?

2人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問