![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
PHP+MySQLでCall to undefined function mysql_connect()エラーとなり困っています。
各Ver
MySQL=5.1.32
PHP=5.2.9
Apache=2.2.1.1
コマンドラインからは全て動作しています。
(データべース・テーブル作成・SELECT文等)
http:localhostでは、PHPも動作しています。
のでApacheも大丈夫だと思います。
http:localhostで、PHPのMySQL関数が動作しません。
extension=PHP_mysql.dllのコメント[;]は外しました。
PHP_mysql.dllの保存場所はc:/php5/ext/
なぜか、SQLite用関数は動きます。
(同じ階層にあるc:/php5/ext/PHP_sqlite.dll)
環境変数[PATH]にc:\php5を登録。
libmysql.dllは何度試しても動かなかったので、インターネット内にある情報を参考に全ての場所にコピペで置きました。
php5/直下
Apache2.2/bin/直下
system32/直下
ウィルスバスター2009を停止して試しましたがダメでした。
初心者の私にはもうどうして良いかわかりません。
良きアドバイスをよろしくお願いします。m(_ _)m
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
どうも。
自分もついさっきまで、ほぼ全くおんなじ現象で悩んでいましたが、解決できたので、参考になるかどうか分かりませんが。
自分の場合ですが、apacheのhttpd.confが原因でした。
このファイルで、LoadModuleを追加する記述をしたと思うのですが、この記述が問題でした。自分ははじめ、
Dynamic Shared Object (DSO) Supportの欄で、LoadModuleの最後に
LoadModule php5_module "C:/php/php5apache2.dll"
#
# Configuring PHP5/Server-Module
#
<IfModule mod_php5.c>
AddType application/x-httpd-php .php
PHPIniDir "C:/php/php5"
</IfModule>
と記述していましたがこれを
<IfModule mod_php5.c>
AddType application/x-httpd-php .php
PHPIniDir "C:/php/php5"
</IfModule>
LoadModule php5_module "C:/php/php5apache2.dll"
#
# Configuring PHP5/Server-Module
#
要は、<>内の構文をPHP5のLoadModuleより前に置き換えただけです。
これで、ちゃんとmysqlを使ったPHPファイルをちゃんと読んでくれました。
あいにく、SQLiteの方は動作確認はしておりませんがもし参考になったらなと思います。
返信ありがとうございました。
記載に順序があったのですね。
非常に勉強になりました。
apacheやphpの各種設定も勉強しないとダメみたいですね。
次はサーバー設定も勉強してみます。
ありがとうございました。
No.2
- 回答日時:
こんばんは。
不足情報としてどのようなエラーが吐き出されるのでしょうか?その内容がかなり重要な部分になりますので。この回答への補足
Fatal error: Call to undefined function mysql_connect() エラーです。
あと、怪しい点がありました。
参考書に載っていたので、Apacheのhttpd.confに以下を追記しています。
―――――――――――――――――――――――――――――――――
AddType application/x-httpd-php .php
LoadModule php5_module "c:php5/php5apache2_2.dll
PHPIniDir "c:/php5/ ←ここが何かに影響しているのでしょうか?
Alias /hajimete_php5/ "c:/hajimete_php5/"
<Directory c:/hajimete_php5">
Options Indexes FollowSymLinks
AllowOverrride Options
Order allow,deny
Allow from all
DirectoryIndex index.php index.html
</Directory>
―――――――――――――――――――――――――――――――――
PHP.iniはc:/php5/に入っていますが、
c:/hajimete_php5としないと、PHPが実行されません。
経緯をたどると、
(1)参考書Aで上記項目を追加。(データベースはSQLiteを使用)
PHPIniDir "c:/php5/をc:/hajimete_php5として、参考書を全て実行できました。
SQLiteは実行できます。
その次に
(2)参考書Bを購入し、(データベースはMySQLを使用)
extension=PHP_mysql.dllのコメント[;]は外し、
libmysql.dllを
php5/直下
Apache2.2/bin/直下
system32/直下
に全てにコピーで配置しました。
extension_dir c:/php/ext等の設定は全て同じでした。
php.iniはc:/php5/に置いているのに、
c:/hajimete_php5としないと、PHPが実行されないのが理解できません。
尚、設定項目をいじっているphp.iniはc:/php5/にあり、
試しにそれをコピーしてc:/hajimete_php5に置いてみても動作しませんでした。
Apacheに追記した
PHPIniDir "c:/php5/
は「php.iniはc:/php5/にありますよ」という解釈は間違いでしょうか?
また、PATH変数がc:/php5とある為、c:/hajimete_php5しても動作するのでしょうか?
もう何がなんだか解らなくなってます。(;一_一)
No.1
- 回答日時:
この回答への補足
まさしく、エラーメッセージやプログラムの構成まで、そのとおりです。
ただし、extension=PHP_mysql.dllのコメントを外すということと、
libmysql.dllを指定場所に置くというのは、
php5/直下
Apache2.2/bin/直下
system32/直下
やってみたのですが、どうも駄目みたいでした。
AddType application/x-httpd-php .php
LoadModule php5_module "c:php5/php5apache2_2.dll
PHPIniDir "c/hajimete_php5 ←やっぱり怪しい?
Alias /hajimete_php5/ "c:/hajimete_php5/"
<Directory c:/hajimete_php5">
Options Indexes FollowSymLinks
AllowOverrride Options
Order allow,deny
Allow from all
DirectoryIndex index.php index.html
</Directory>
全部アンインストするのが手っとり早いのでしょうか?^^;
できれば、SQLiteとMySQLを同時に動かしたい為、解決したかったのですが・・・。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHP & MySQL: Server-side Web Development ペーパ 1 2022/04/19 19:23
- MySQL mysqlがインストールされているのかどうか 1 2023/06/05 14:19
- MySQL 「掲示板のログイン画面」はPHP~MySQLに「データベース認証のシステム」方式です。 1 2022/09/27 05:00
- MySQL mysqlがインストールされているのかわかりません 1 2023/06/05 02:26
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- MySQL MySQL,JavaScript,PHPコードの結果を表示する方法を教えてください。 1 2023/02/13 17:49
- PHP ログイン機の付きの掲示板サイトを作りたいです。 2 2022/10/09 04:33
- MySQL [1000地域 × 10カテゴリー = 1万件のテーブル]!グループ化? 1 2023/06/14 23:56
- MySQL 参考書に従って入力したつもりでしたが、最後はエラーがでました。 1 2022/09/28 03:45
- 知的財産権 著作権違反 らしき記事が見当たりません!? 1 2022/05/24 01:54
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
phpのextension_dirを複数指定...
-
phpの中でphpを書けないか
-
Apache 2.4.0でphp5.3を使うには?
-
PHPで別PHPを呼び出す。
-
PHPでこのような数字を算出する...
-
PHP PDOライブラリが読み込まれ...
-
フォームで戻った際に入力済み...
-
MySQL関数が動かない
-
HYのAM11:00のラップの部分の歌...
-
メレンゲの歴史
-
*.php、*.php3、*.phtmlの違い
-
onedrive にexcelファイルをア...
-
フォントの色を変えるには?
-
別ファイルの変数を呼び出した...
-
PHPのif文でその処理を途中で抜...
-
CFileDialogの最初のディレクト...
-
.phpと.incファイルの違いはな...
-
「警告:ページの有効期限切れ...
-
「@$変数」の「@の意味は?」
-
リンク先を隠す方法はないでし...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
フォームで戻った際に入力済み...
-
.htaccessにphp_valueが使用できな
-
<A href ~ と一緒に値を渡すには
-
phpの中でphpを書けないか
-
HYのAM11:00のラップの部分の歌...
-
*.php、*.php3、*.phtmlの違い
-
PHPで別PHPを呼び出す。
-
PHPINFOが見えない
-
プリクラの設置してある場所
-
fsockopenなどについて
-
PHP/SQL リスト→クリックした名...
-
パソコン一日中つけっぱなしの...
-
PHPからMSSQLへの接続結果の文...
-
ヒョウタンボクの毒はどんな種...
-
php界のCPANのような場所はある...
-
メレンゲの歴史
-
header(Location:~)で$_SESS...
-
phpでの画像ランダム表示方法
-
アルゴリズム
-
phpのextension_dirを複数指定...
おすすめ情報