![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
こんにちは。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で質問しましょう!
似たような質問が見つかりました
- MySQL 参考書に従って入力したつもりでしたが、最後はエラーがでました。 1 2022/09/28 03:45
- MySQL データベースの複製の仕方(mysql) 2 2023/05/30 18:24
- MySQL mysqlがインストールされているのかどうか 1 2023/06/05 14:19
- MySQL mysqlがインストールされているのかわかりません 1 2023/06/05 02:26
- MySQL MySQLのテーブル作成でハイフン - は使用できないのでしょうか? 2 2022/10/21 16:50
- MySQL テーブル作成です。どこかのスペルが間違っているか記号など スペースかな? 1 2022/10/01 05:08
- MySQL 何にかが違うから エラーなんでしょうね! 2 2022/09/18 05:28
- 英語 過去から見た未来を表す would 1 2023/01/14 17:09
- その他(プログラミング・Web制作) mariadbでのエラー 1 2022/11/15 12:31
- PHP PHP & MySQL: Server-side Web Development ペーパ 1 2022/04/19 19:23
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
文字化けに関して
-
MySQL5.5の設定とエラー
-
XOOPSインストール中に真っ白画...
-
PHP+MYSQL(MYSQLに接続できない)
-
フォントの色を変えるには?
-
【BAT(バッチ)ファイル】Web...
-
PHP8を使うと、大量のWarningが...
-
バッチを用いたフォルダの自動移動
-
ファイル一覧を表示しその画面...
-
文字化けについて
-
PHPのif文でその処理を途中で抜...
-
eclipseのエラーの意味
-
透過PNGが透過されない!!
-
空メールの作り方教えて欲しい...
-
3つ以上の論理積は利用可能なの...
-
fopenでファイルが開かない場合...
-
tplを読みに行けません。
-
PHPのstrpbrk関数ってひらがな...
-
move_uploaded_fileのエラーについ
-
Apache(Ver 2.4.4)の設...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
localhostにリダイレクトされて...
-
文字化けに関して
-
データベースに接続できない・...
-
レンタルサーバでPHPからMySQL...
-
phpmyadminのトップページのMyS...
-
PHPから別のMySQLサーバへの接...
-
XAMPPでSQL文を流すとフリーズ...
-
お名前comのPHPとmysqlの接...
-
CentOS5のPHPにMySQLサポートを...
-
MySQLから送られて来たデータの...
-
PHPで作ったログイン機能でデー...
-
エックスサーバーでのmysql設定...
-
PHPのWARNINGをcatchするには
-
hpinfoにmysqlやmysqliが表示さ...
-
phpから、mysqlログイン時のユ...
-
XOOPSインストール中に真っ白画...
-
勉強の甲斐あっていよいよPHPフ...
-
mysql_connectについて
-
データベースへの持続的接続
-
MySQL5.5の設定とエラー
おすすめ情報