
こんにちは。PHPの解説書を見ながらMYSQLへの接続するコマンドを理解しようとしているのですが、仕組みがいまいちよくわかりません。その本で紹介しているやり方は、以下のとおりです。
$dbcnx = @mysql_connect('localhost', 'root', 'mypasswd');
if (!$dbcnx) {
exit('<p>Unable to connect to the ' .
'database server at this time.</p>');
}
後にデータベースを選択し、編集するコマンドが続きます。何が解らないかといいますと、一行目です。この時点でおそらくmysqlに繋がるのだと思いますが、でもこれだけでは$dbcnxに値を代入しているだけではないのでしょうか?う~ん、そういうものだと理解するのが一番だと思うのですが、いまいちプログラムの理屈が良くわかりません。
砕いて説明していただけるととても助かります。ご存知の方おられましたらよろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
結果的に、$dbcnxに値が代入されるだけです。
ただ単に数値を返しているわけではありません。mysql_connect関数の中では、localhostのMySQLサーバーにユーザー名rootパスワードmypasswdで、接続するという作業を頑張ってやっています。(TCP接続を行い、決められた手順でユーザー名とパスワードを送って、サーバーに認証してもらいます。)
その作業の結果として、数値(この場合はMySQLリンクID)が返却されます。(そして、$dbcnxに代入されます。)
こんなんで、どうでしょう? (^^;
参考URL:http://php.s3.to/man/function.mysql-connect.html
この回答への補足
ありがとうございます。やっぱり実際にこの時点で接続しちゃうんですね。う~ん、代入処理のはずなのに、と思ってしまうんですけど、でも少しだけ心のもやもやが取れたような気もします。ということは、次に続く、mysql_select_dbも同様の仕組みなのでしょうか?コードは以下のようになります。
if (!@mysql_select_db('ijdb')) {
exit('<p>Unable to locate the joke ' .
'database at this time.</p>');
}
自分の解釈としては、mysql_select_db('ijdb') はif構文の条件でしかないと思っているんですけど、その条件提示をしている最中にもう実行しちゃうということなんでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
mysql文字化けについて
-
hpinfoにmysqlやmysqliが表示さ...
-
XAMPPでSQL文を流すとフリーズ...
-
FTPコマンドでディレクトリごと...
-
PHPのif文でその処理を途中で抜...
-
FORMで送信ボタンと戻るボタン...
-
日付と年月日を選択するコード...
-
findfirst("*",&ffblk,FA_DIREC...
-
rmdirでフォルダが消せません
-
バッチを用いたフォルダの自動移動
-
「クラウドにアップロード」」...
-
PHPファイルの中身が見られるこ...
-
PHPで複数ファイルのダウン...
-
フォントの色を変えるには?
-
PHPで新しいウインドウで開く命...
-
.phpファイルが、表示されない
-
現在位置より2つ上のディレク...
-
さくらインターネットでメール...
-
unlinkでどうしてもファイルが...
-
文字コードが混在するテキスト...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
windwsXP環境下でapache2.2、ph...
-
お名前comのPHPとmysqlの接...
-
php→mysqlへの接続が出来ない(...
-
xamppliteでmysqlにアクセスしたい
-
mysqlへのデータ挿入
-
文字エンコードの設定について
-
localhostにリダイレクトされて...
-
エックスサーバーでのmysql設定...
-
hpinfoにmysqlやmysqliが表示さ...
-
My SQL の文字化け
-
phpでmysql接続について
-
php.iniのMYSQLの部分ですが…ど...
-
データベースへの持続的接続
-
MySQLから送られて来たデータの...
-
勉強の甲斐あっていよいよPHPフ...
-
mysql_connectについて
-
ネット上の無料サーバースペー...
-
CentOS5.3に、apache2.2.15とph...
-
CentOS5のPHPにMySQLサポートを...
-
PHP+MySQL+phpMyAdmin パスワ...
おすすめ情報