秘密基地、どこに作った?

こんにちは。
最近「実践マスターPHP+MySQL」という本を使い、PHPの勉強を始めたばかりのものです。

PEARをインストールしてみようと思い、go-pear.batを実行したのですが、下記のようなメッセージが発生してしまいます。

PHP Warning: PHP Startup: Unable to load dynamic
library 'c:\php\ext\mysql.dll'
- 指定されたモジュールが見つかりません。
in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library 'c:\php\ext\mysql.so'
- 指定されたモジュールが見つかりません。
in Unknown on line 0
   ・
   ・

メッセージボックスが表示され、Entを押すと継続されて、下記インストール手順のメッセージが表示されます。
Are you installing a system-wide PEAR or a local copy?
(system|local) [system] :
そのまま、対話式を実行していくと、とりあえずはインストールできたのですが、本当にこれできちんとインストールできたのか疑問に思います。
調べてみた結果、c:\php\extの中には「php_mysql.dll」はあったのですが、「mysql.dll」、「mysql.so」はありませんでした。検索したのですが、この2つのファイルはどこにも存在していませんでした。
どうしたらいいのでしょうか?

A 回答 (3件)

拡張モジュール設定時の『指定されたモジュールが見つかりません。

』って
検索するとたくさんヒットするけれど結論ない情報多って結構ありますね^^;
(私も良く分かってない者ですので、ここに立ち寄った訳ですが)

php4しか使っていないのでphp5のことはさっぱりなのですが、
私の場合、php4でdomxmlモジュールを拡張する際に調べていて
下記の事がオフィシャルサイトに書かれているのに気づきました。

==== 抜粋 ====
Windows ユーザの場合、これらの関数を使用するには php.ini の php_domxml.dll を有効にしてください。
また、この拡張を有効にするためには、追加の DLL をシステムパスにコピーする必要があります。
PHP 4 では、この DLL は dlls/ にあります。 DLL 名は、PHP<=4.2.0でlibxml2.dll、PHP>=4.3.0でiconv.dllです。
また、PHP 5.0.0 以降では iconv が Windows 用 PHP バイナリにデフォルトでコンパイルされていますので、外部DLLは必要ありません。
==============

Apache再起動時のエラーでphp_domxml.dllが見つからないと怒られますが、
本当のところはdllsフォルダにあるiconv.dllもしくはlibxml2.dlがシステムパス
の通ってる所に無いとダメっぽいですね。

ということは、他の拡張モジュールを使うときでもdllsフォルダにある何かが
必要になるケースがあるってことなのかなぁと。

素人的な発想ですが、「C:\php」に環境変数のパスを通しているならそこにdllsフォルダの全ファイルをコピるとか、
もっと乱暴なことをいうと「C:\WINDOWS\system32」にdllsフォルダの全ファイルをコピっておけば、どの*.dllを
拡張しても動くんじゃないかと思いました。
    • good
    • 0
この回答へのお礼

なるほど、そういうやり方もあるんですね。
私は本当に素人なのでエラーが1つでもでると一歩も進めなくなってしうので大変です。
またよろしくお願いします!

お礼日時:2007/10/17 13:12

環境変数の設定はOSにより微妙に違うのですが、


2000/xp/vista なら基本的には

コントロールパネル→システム→詳細→
環境変数

で設定できる画面に行きますが、編集しにくい上に
間違えると被害がでかいので、以下のフリーソフトを使って
設定することをお勧めします。

eve - munepi.com
http://www.munepi.com/software/eve.html

上記のツールをインストールして起動したら、
システム環境変数を選択し、
名前の欄でPATHとあるところを探してください。
見つかったらそこをダブルクリックします。
値というラベルのついた編集可能なテキストボックスに
既に何個か登録されていると思いますが、
その最初の行か最後の行に、
ibmysql.dll のあるディレクトリを追加してください。
追加できたら、適用→保存して適用
してからeveを終了してください。

この回答への補足

ありがとうございます!
さっそくやってみました。しかしまだ警告文が消えません。。
ちなみにチェックポイントの(1)のextension_dirは
extension_dir = "c:\php\ext"
であっていますよね??

補足日時:2007/09/28 11:02
    • good
    • 0
この回答へのお礼

解決しました!!include_pathの設定が
include_path = ".;c:/php/includes;c:/php/pear"
となっておらず、警告文が出たみたいです。
お騒がせしてすみません。
正常にインストールできているかは不明ですが、なんとか警告文は消えました。
ありがとうございました!

お礼日時:2007/09/28 11:40

参考リンクの3177の発言からのスレッドのようにチェックしてみてください。



BBS - PHPの基礎体力
http://www.sound-uz.jp/php/bbs/index.php?mode=kl …
チェックポイントは、以下の3点でした。

(1)extention_dir は正しいか。(php.ini)
(2)extension=php_mysql.dll のコメントアウトをはずす。(php.ini)
(3)libmysql.dll のあるディレクトリ(c:\php)にパスを通す。
   (Windowsの環境変数の設定)

参考URL:http://www.sound-uz.jp/php/bbs/index.php?mode=kl …

この回答への補足

回答ありがとうございます!

チェックしてみたところ、(1)と(2)は大丈夫だったのですが、(3)の
(3)libmysql.dll のあるディレクトリ(c:\php)にパスを通す。
   (Windowsの環境変数の設定)
のやり方が分かりませんでした。

ど素人で申し訳ないのですが、やり方を教えてもらえたらうれしいです。

補足日時:2007/09/27 07:44
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報