$_GETとたたかっています

  • 2008/06/14(土) 12:30:00

ああああああああああああああ!
分からん分からん分からん!!!
思い通りに動かなくてライライする(ノ`Д)ノ


MySQLでデータベースを作る

  ↓

PHPを使ってMySQLを操る


ここまでは良かった。
がっ。
ハタと気付いたんだけど、ブラウザでみんなに見てもらうDBを作ろうとしてるのに、
そのDBが紅のローカル環境にある、っておかしくネ?


ちゅうことで、独自の調査の結果、phpMyAdminなるものの存在を知る。
インターフェイスがブログの管理画面ぽい。こいつぁ便利だ・・・!
使い方については下記リンクが超☆絶分かりやすくてオヌヌメ( ^ω^)
phpMyAdminの使い方:phpMyAdminを使った管理


で、なんだっけ。土曜の昼からなぜこんなにライライしてるかというと。
TOPぺージから$_GETでギークさんのidを渡して、個別ページで詳細を表示、
ということがしたいんだけど、トンでも何も表示されなくてむしゃくちゃしているε=(`・ω・´)=3
爆発しろ。PHP爆発しろ。にゃろー、今に見てろよ・・・・!!



とりあえずお昼食べよ。

LINEで送る

PHPを使ってMySQLを操る

  • 2008/06/09(月) 21:30:00

MySQLデータベースをPHPで呼び出そう

前回作ったデータベースを、コマンドプロンプトの画面ではなく、ブラウザ上で見れるようにする。
前回:MySQLはじめの一歩 - データベースを作る


まずはソースから。
※下記コード及び解説は、『MySQL入門以前』を基に書いています。

1.<?php
2.mysql_connect('localhost','root','*****');
3.mysql_select_db('arcarna');
4.
5.$sql="select * from member";
6.$result=mysql_query($sql);
7.$rows=mysql_num_rows($result);
8. if($rows==0){
9. echo "<p>該当データがありません</p>";
10. }
11. else{
12. while($row=mysql_fetch_array($result)){
13. echo "<p>";
14. echo $row["name"];
15. echo " ";
16. echo $row["work"];
17. echo " ";
18. echo $row["about"];
19. echo " ";
20. echo $row["blog"];
21. echo "</p>";
22. }
23. }
24.?>



おっとそうだ!大切なことを思い出した!
今回は、コメント欄でokayamaさんにアドバイスいただいたのを参考に、
ソースコードを実体参照で書いてみた!みんな幸せかな・・・゚+.(0゚・∀・)゚+.゚
これ知らなかったので、感動のあまりテンション高すぎのお礼メールを発射してしまった。
でもきもい紅にお返事くれた!okayamaさんとてもいいひと。ありがとうございました!!



ではソースに戻る。
2.3行目。
これは前回の mysql -u root -puse arcarna; に相当するぽい。
つまり、MySQL に接続して、データベースを指定する、という手順。


5行目。
select * from member(memberテーブルに格納したデータの内容を表示)という文字列を、
変数 $sql に代入している。


6行目。
mysql_query というのは、クエリ文をMySQLで実行するという関数。
いま $sql には select * from member が入ってるので、これを実行するということか。
で、それを今度は $result に代入している。


7行目。
mysql_num_rows は、$result(=select * from member) を実行した結果の行数を返す関数。
なんだろ、次から次へと代入してる。これ、お決まりの手順みたい。


8行目。
$rows が超イコールで0だったら、つまりmemberテーブル内にデータが何も入っていなくて0行だったら。


9行目。
”該当データがありません”と echo せよ。
10行目は if 終了の中カッコ。


11行目。
そうでなければ、つまりmemberテーブル内にデータが入っていて、表示した結果が0行じゃなかったら。


12行目。
(カッコ) 内の条件が成り立つあいだはずっと {中カッコ 以下を実行せよ。
繰り返し構文:8日目 目指せ!ループマスターへの道!

(カッコ) 内の条件。
mysql_fetch_array というのは、引数($result) の結果を、連想配列で $row に格納するという関数。
だから、$result にデータがある限りはずっと、{中カッコ以下が実行される。


13・21行目は、タグ出力の開始と終了。


14・16・18・20行目は、$row 内に格納された name,work,about,blog のデータをそれぞれecho


15・17・19行目は、各項目のあいだにスペースを挿入してる。データぶっ続きだと見づらいからね><


22・23行目は while,else 終了の中カッコ。



わあ!できた!んじゃブラウザで見るど(`・ω・´)

member.php(ローカルなのでSS)



神様・・・今夜は良い夢が見れそうです・・・!!!


LINEで送る

MySQLはじめの一歩 - データベースを作る

  • 2008/06/07(土) 00:00:00

私信>ゆーすけべーさん
 ブクマコメ産休です!把握した!と言いたいとこだけど、そうでもないです。
 でも一応、把握しました!(どっちだ)



MySQLを使ってデータベースを作ってみよう

MySQL入門以前』をざっくり完食したので、今度はじっくりよく噛んで食べる。
ナイスタイミングで本日、アルカーナのメンバー紹介ページが完成したので、
ここのデータを使ってarcarnaというデータベースを作ってみよう(`・ω・´)
参照データ:アルカーナ | メンバー紹介



MySQLのインストール&環境設定は、『MySQL入門以前』を見ながらやったら問題なく出来た!
この面倒臭い作業が、泣き言垂らさずちゃんとひとりで出来るなんて・・・!
この本には "ドラえもん要らず!" というキャッチコピーを授けたい。それはさておき。


MySQLはコマンドプロンプトから操作するらしい。





mysql -u root -p

  ↓
パスワード入力 で、MySQLモニタを起動。
間違って -pのあとに;(セミコロン)打ってエンター押したら怒られた。変な音でた。以後気をつける。



まずはデータベースを作る。構文は create database ほげほげ;
今回は arcarna というデータベースを作成。





このデータベースで作業するには、最初に「今からこれを使うよ!」と指定しなくちゃいけないんだって。
use arcarna; arcarnaを使いますよっと。





さらにこの中にテーブルというのを作って、その中にデータを入れるんだって。
図書館を建てても、本棚がなきゃ本を格納できないじゃん!という感じだろか。たぶんそう。
テーブルを作る構文は create table テーブル名(フィールド名1 データ型 , フィールド名2 データ型・・・);

今やりたいのは、memberというテーブルに、name,work,about,blogという4項目を作ること。
だから、create table member( name char(20), work char(30), about char(255), blog char(30));





これでおk!
char っていうのはデータの型で、characterの省略形。文字を入れたいときはこれ。
(20)だと、半角で20文字までのデータが格納できる。最大で(255)まで。
それ以上長い文字列を格納したい場合は text を使う。
ちなみに数字を入れたい場合は int。integer(整数)の略。



うし。Query OK って言われると燃えるね。燃えてきた!
でもこれだけじゃちと不安。本当にちゃんと作れたかどうか確認したい。
作った内容を確認するときは show fields from member;
メンバーテーブルのフィールドを見せて!





ありがとう。本当にありがとう。イメージ通りでありがとう。


ここからが大事。実際にデータを入れていく。
REPLACE into テーブル名 values(フィールド1の値 , フィールド2の値・・・);
具体的には REPLACE into member values(nameの値 , workの値・・・); と入れればいいのね。





aboutは長いのでひとまず省略。そうそう、日本語入力は[ALT]+[半角/全角キー]で切り替え。
教えて!goo
で見た( ・ノз・)





こんな感じでガツガツ入れる。で、入れ終わったらやっぱり確認したい。
確認するには select * from member;





入ってル━━(゚∀゚)━━!!!



最後に、さっきスルーしたaboutの値を追加。
update member set about="新しい値" where name="××";

where 以下で条件を指定。今回は nameが"××" の人のaboutの欄に"新しい値"を入れる。
とりあえず、一番短そうな佐久間さんにしよっと( ゚ノД゚)





では確認。





無事、入りましたね!やたー\(^o^)/やたー\(^o^)/
MySQLって素晴らしい。



LINEで送る

geekDBプロジェクトの件

  • 2008/06/01(日) 06:00:00

コメント欄およびブックマークコメントでのアドバイス、
まことにありがとうございますっ。


オリジナリティ、出したいですね。
ちょっと考えていたのは、

・各Geekさんにキャッチフレーズを付ける(ex:社員は父1人 天パでスケベな若社長)
・各Geekさんから一言(or過去の名言など)

を、ページの見出しにでっかく入れるとか。

あとは連絡先、Twitter&mixiアカウント、SBM(アクティブに利用してる場合)、
好きな本(or映画、尊敬してる人とか?)等も、可能であれば入れたいなぁと。
この辺りは、掲載許可をいただく際に、併せてお伺いしようと思っています。
もし「インタビューOK!」という素敵な方がいらっしゃれば、
全国どこへでもルーラひとつで飛んでいく心構えです。


API公開てのは、ソース公開とはまた別なのかな・・・。
ソースはここに貼る予定です。なるべく、公開できるものは公開していく所存!


そだ。ひとつ気になったのが、ゆーすけべーさんからいただいたコメント
>それ Acme::CPANAuthors-Japanese でできるかもよ
  http://coderepos.org/share/browser/lang/perl/Acme-CPANAuthors-Japanese


に、にほんごでおk・・・( ;∀;)
すいません!ばかですいません!理解できませんでしたごめんなさい><


いま 『MySQL入門以前』 を消化中で、これから ”なんでもDB” 作りにチャレンジするところ。
コメント欄でも好評だったけど、この本すごい!マジ最高!!
もう食べちゃいたいくらい分かりやすい。目に入れても痛くないくらい分かりやすい。
いま「無人島に1つだけ持っていけるとしたら・・・」て聞かれたら、
間違いなく『MySQL入門以前』と即答する。ごめん言い過ぎた。いつもの悪い癖。
  

LINEで送る