• 締切済み
  • すぐに回答を!

指定されたモジュール・・・

こんにちは。 最近「実践マスター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つのファイルはどこにも存在していませんでした。 どうしたらいいのでしょうか?

共感・応援の気持ちを伝えよう!

  • 回答数3
  • 閲覧数1057
  • ありがとう数3

みんなの回答

  • 回答No.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を 拡張しても動くんじゃないかと思いました。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

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

  • 回答No.2

環境変数の設定はOSにより微妙に違うのですが、 2000/xp/vista なら基本的には コントロールパネル→システム→詳細→ 環境変数 で設定できる画面に行きますが、編集しにくい上に 間違えると被害がでかいので、以下のフリーソフトを使って 設定することをお勧めします。 eve - munepi.com http://www.munepi.com/software/eve.html 上記のツールをインストールして起動したら、 システム環境変数を選択し、 名前の欄でPATHとあるところを探してください。 見つかったらそこをダブルクリックします。 値というラベルのついた編集可能なテキストボックスに 既に何個か登録されていると思いますが、 その最初の行か最後の行に、 ibmysql.dll のあるディレクトリを追加してください。 追加できたら、適用→保存して適用 してからeveを終了してください。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

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

質問者からの補足

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

  • 回答No.1

参考リンクの3177の発言からのスレッドのようにチェックしてみてください。 BBS - PHPの基礎体力 http://www.sound-uz.jp/php/bbs/index.php?mode=klog&num=9 チェックポイントは、以下の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=klog&num=9

共感・感謝の気持ちを伝えよう!

質問者からの補足

回答ありがとうございます! チェックしてみたところ、(1)と(2)は大丈夫だったのですが、(3)の (3)libmysql.dll のあるディレクトリ(c:\php)にパスを通す。    (Windowsの環境変数の設定) のやり方が分かりませんでした。 ど素人で申し訳ないのですが、やり方を教えてもらえたらうれしいです。

関連するQ&A

  • <大至急!>ご教授願います。

    MySQLで作ったお祭りのデータベースからデータを検索し、お祭りの名前と開催地だけを検索結果として表示させるというものを作っています。 しかし、エラーもなにも起きていないのに、検索しても結果が表示されません。検索結果の件数も反映されません。 PHPのプログラムの方にまだ問題があるのでしょうか?それともMySQLの方に問題があるのでしょうか? また、pearについても質問があります。pear listを実行すると問題なく見ることができるのですが、以下のような警告が表示されます。 PHP Warning: PHP Startup: Unable to load dynamic library 'ext\php_pdo_firebird. dll' - 指定されたモジュールが見つかりません。 in Unknown on line 0 Warning: PHP Startup: Unable to load dynamic library 'ext\php_pdo_firebird.dll' - 指定されたモジュールが見つかりません。 in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library 'ext\php_pdo_oci.dll' - 指定されたモジュールが見つかりません。 in Unknown on line 0 Warning: PHP Startup: Unable to load dynamic library 'ext\php_pdo_oci.dll' - 指 定されたモジュールが見つかりません。 in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library 'ext\php_pspell.dll' - 指定されたモジュールが見つかりません。 in Unknown on line 0 Warning: PHP Startup: Unable to load dynamic library 'ext\php_pspell.dll' - 指定 されたモジュールが見つかりません。 in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library 'ext\php_sybase_ct.dll ' - 指定されたモジュールが見つかりません。 in Unknown on line 0 Warning: PHP Startup: Unable to load dynamic library 'ext\php_sybase_ct.dll' - 指定されたモジュールが見つかりません。 勉強中と言ってもを初心者同然なので、ご教授いただきたいです。よろしくお願いいたします。 Windows7 PHP 5.4.9 MySQL 5.5 Apach 2.2.22 phpMyAdmin 3.5.4 <html> <head> <title>PHPのテスト</title> </head> <body> <?php require_once("MDB2.php"); $dbUser = "root"; $dbPass = "im1907720"; $dbHost = "localhost"; $dbName = "moe_db"; $dbType = "mysql"; $dsn = "$dbType://$dbUser:$dbPass@$dbHost/$dbName"; $conn = MDB2::connect($dsn); if(MDB2::isError($conn)) { die($conn -> getMessage()); } $conn -> disconnect(); //POSTされたデータを受け取り、エスケープします。 $search_key=addslashes($_POST['search_key']); $search_ken=addslashes($_POST['search_ken']); $sql= <<<EOS SELECT * FROM moeinfo WHERE name like '%$search_key%' OR address like '%$search_ken%' EOS; /* if(substr(PHP_OS,0,3) == 'WIN') { $sql=mb_convert_encoding($sql, "SJIS", "EUC-JP"); } */ $result=$conn->query($sql); if(MDB2::isError($result)) { die($result->getMessage()); } $count=$result->numRows(); print "検索結果は" .$count. "件です。<br>"; if($count> 0){ ?> <table width="450" border="1" cellspacing="0" cellpadding="8"> <tbody> <tr><th>イベント名</th><th>開催地都道府県名</th></tr> <?php while($rs=$result->fetchRow(MDB2_FETCHMODE_ASSOC)) { if(substr(PHP_OS,0,3) == 'WIN') { $rs['name']=mb_convert_encoding($rs['name'], "EUC-JP", "SJIS"); $rs['address']=mb_convert_encoding($rs['address'], "EUC-JP", "SJIS"); } } ?> <tr><td aling="center"><?=$rs['name']?></td> <td><?=$rs['address']?></td> </tr> </tbody> </table> <?php } //mysql_free_result ($result) ; $result->free(); $conn->disconnect(); ?> </body> </html>

    • ベストアンサー
    • PHP
  • php.iniの修正

     こんにちは!最近Apache,PHP,MySQLをインストールしたんですが、今php.iniの修正に1つところが困ってます:  php.iniの中に“extension=php_mysql.dll”これ前の“;”を外すじゃない、 しかし、外してから、保存してApache2を再起動するとこんなメセージが出てくるですよ:“PHP Startup:unable to load dynamic library 'D:\PHP\ext\php_mysql.dll'-指定されたモジュールが見つかりません。” これは如何すればいいですか?分かる方がいましたら是非教えてください、お願いします!

    • ベストアンサー
    • PHP
  • PHPのインストールに成功したはずが…

    OSはWindowsXPです。 昨日、Apache2とphp5のインストールをしました。 本(PHP5.0+MySQL5.0で構築する最速webシステムという本です。)を見ながらやりました。 最後にphpinfo()というタグをうって localhostで見てみたら機能していました。 そして今日 パソコンを使おうと思って起動したら 「(Warning) php Startup:Unable to load dynamic library 'C./php/ext\php-mbstring.dll'-指定されたモジュールが見つかりません 」 というような文が出てきました。 この警告を出さないようにするためには どうしたらいいでしょうか? ちなみに、まだ MySQLはインストールしていません。 (これが原因でしょうか?) ご指導の方お願いします。

    • ベストアンサー
    • PHP
  • PHP5の拡張モジュールの関数を有効化するとエラーがでます。

    こんにちは。 いつもお世話になっております・・・。 PHP5+Apach2+MySQL4.0 Win環境で、インストールをしていたのですが・・。 <?php phpinfo(); ?>を、Apacheのドキュメントフォルダに 入れた所、ちゃんと表示されたので、インストール 自体は行えているのかな、と思うのです。 が、C:\Windows\php.ini の中に extension = php_mysqli.dll を足して Apacheを再起動させると Warning: PHP Start up:Unable to load dynamic library. c:/php/ext\php-mysqli.dll というエラーが2回繰り返し表示されてしまうのです。 php_mysqli.dllファイルは、c:/php/extフォルダに あったのを、システムフォルダ(C:\windows\system32)にもコピーしてあります。 なぜこのようなエラーが出てしまうのでしょうか・・・。 どうかご指導よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • 基礎からのPHPという学習本で勉強中です。PEAR::DBモジュールの

    基礎からのPHPという学習本で勉強中です。PEAR::DBモジュールのインストールがうまくいきません。 OS:Windows XP php-5.2.3-Win32.zip を使用。 C:\Program Files\PHP5 (ディレクトリ) 下記のとおりphp.iniを変更・追加しました。 include_path = ".;C:\Program Files\PHP5\includes"(追加) ; extension_dir = "./"(コメントアウト) extension_dir = "c:\Program FIles\PHP5\ext"(追加) extension=php_gb2.dll extension=php_mbstring.dll extension=php_mysql.dll extension=php_pdo.dll extension=php_pdo_mysql.dll (コメントアウトをはずす) mbstring.internal_encoding = SJIS(修正) apache_20204-win32-x86-no_ssl.msi を使用。 下記のとおりhttpd.confを変更・追加しました。 LoadModule php5_module "c:\Program Files\PHP5\php5apache2_2.dll"(追加) PHPiniDir "C:\Program Files\PHP5"(追加) DirectoryIndex index index.html index.php(追加) Include conf/extra/httpd-languages.conf 下記のとおりmime.typesを変更・追加しました。 application/x-httpd-php php(追加) 下記のとおりhttpd-languages.confを変更・追加しました。 DefaultLanguage ja(修正) AddDefaultLanguage ja(追加) mysql-5.0.45-win32.zip を使用しました。 go-pear.batの実行結果。 PHP Warning: PHP Startup: Unable to load dynamic library 'C:\Program Files\php5 \ext\libpdf_php.dll' - 指定されたモジュールが見つかりません。 in Unknown on line 0 Are you installing a system-wide PEAR or a local copy? (system|local) [system] : この状態でインストールを継続するとphp.iniの内容変更メッセージが表示されず、うまくインストールできません。 libpdf_php.dll ファイルはこの書籍の添付CDに数種類添付されておりそのなかに4つのフォルダがあります。 php-503 php-510 php-520 php-520-nozts フォルダそれぞれにlibpdf_php.dllファイルが保存されています。 C:\Program Files\php5\ext\にlibpdf_php.dllを保存し、go-pear.batを実行しましたが、 ** WARNING! Old version found at C:\Program Files\PHP5, please remove it or be s ure to use the new c:\program files\php5\pear.bat command The 'pear' command is now at your service at c:\program files\php5\pear.bat * WINDOWS ENVIRONMENT VARIABLES * For convenience, a REG file is available under C:\Program Files\PHP5\PEAR_ENV.re g . This file creates ENV variables for the current user. Double-click this file to add it to the current user registry. 続行するには何かキーを押してください . . . となりやはりうまくインストールできません。 どなたか解決方法がお分かりの方がいたら教えてください。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • PHPspreadsheetのインストール

    Composerをインストールした後、コマンドプロンプトから以下のようにしてPHPspreadsheetをインストールしようとしましたが、エラーメッセージが出てきてインストールに失敗しました。 C:\Users\Shiro>composer require phpoffice/phpspreadsheet PHP Warning: PHP Startup: Unable to load dynamic library 'php_dg2.dll' (tried: C:\xampp\php\ext\php_dg2.dll (The specified module could not be found), C:\xampp\php\ext\php_php_dg2.dll.dll (The specified module could not be found)) in Unknown on line 0 Warning: PHP Startup: Unable to load dynamic library 'php_dg2.dll' (tried: C:\xampp\php\ext\php_dg2.dll (The specified module could not be found), C:\xampp\php\ext\php_php_dg2.dll.dll (The specified module could not be found)) in Unknown on line 0 Using version ^1.17 for phpoffice/phpspreadsheet ./composer.json has been created Running composer update phpoffice/phpspreadsheet Loading composer repositories with package information Updating dependencies Your requirements could not be resolved to an installable set of packages. Problem 1 - phpoffice/phpspreadsheet[1.17.0, ..., 1.17.1] require ext-gd * -> it is missing from your system. Install or enable PHP's gd extension. - Root composer.json requires phpoffice/phpspreadsheet ^1.17 -> satisfiable by phpoffice/phpspreadsheet[1.17.0, 1.17.1]. To enable extensions, verify that they are enabled in your .ini files: - C:\xampp\php\php.ini You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode. Installation failed, deleting ./composer.json. C:\Users\Shiro> メッセージではphp_dg2.dll が無いと言っていますが、xampp/php/ext の中にちゃんと在りますし、php.inファイルの中でも extension=php_dg2.dll を追加してあります。 またメッセージの中に、php と dll が2度繰り返される、ありえないファイル名C:\xampp\php\ext\php_php_dg2.dll.dll というのが見えますが、これはどういうことなのでしょうか。 同じインストールを数時間前に会社でやって上手く行きましたが、今自分の家で同じようにやっても出来ません。私のPCにウイルスでも入ったのでしょうか。 どなたか解決方法が分かる方がいらっしゃいましたら、お知恵を貸していただけないでしょうか?お願いいたします。

    • ベストアンサー
    • PHP
  • cronでエラー

    いつも参考にさせていただいております。 早速質問をさせていただきます。 PHPのプログラムをcronを動かしているのですが以下のエラーがでます。 ------------------------------ PHP Warning: Unknown(): Unable to load dynamic library './php_gd2.dll' - ./php_gd2.dll: cannot open shared object file: No such file or directory in Unknown on line 0 ------------------------------ ライブラリがないと怒られているようですが、この回避方法は ありますでしょうか? ご教授よろしくお願いいたします。 環境 PHP:Version 4.3.2 Apache:2.0.40 (Red Hat Linux)

    • ベストアンサー
    • PHP
  • PHPからMySQLへ接続設定

    お世話になります Fedora core3を使って PHPとMySQLを設定しているのですが 上手くいきません。よろしくお願いします。 現状としては、PHPは動作しています。 MySQLもターミナルからは動作確認できています。 ところがPHPからMySQLにつながりません。 方法は $conn = mysql_connect($hostname, $usrname, $password) としています。 どこの設定を見ればいいのか等教えていただけないでしょうか? 環境 OS:fedora core3 Apache:Tera Termにてrpm -q apacheで調べたのですが文字化けしてわかりません^^; Fedora core3で標準で入っているものと思います PHP:PHP4.3.11、関係ないかもしれませんが、php -vでversionを調べようとすると PHP Warning:Unknown(): Unable to load dynamic library '/usr/lib/php4/msql.so と出ます 以上よろしくお願いします

  • PHP4.2.2 + MySQL4.1.12 にてWarning

    現在ホスティングでPHP,MySQLを使って勉強しながらプログラムを作成しています。 MySQLに接続する際にエラーログに以下のメッセージが表示されてしまいます。 PHP Warning: Unknown(): Unable to load dynamic library '/usr/local/lib/php/extensions/current/mysql.so' - Cannot open &quot;/usr/local/lib/php/extensions/current/mysql.so&quot; in Unknown on line 0 ログイン自体は出来ていて、処理も正常に動作しているように見えるのですが、このメッセージは何を意味するものでしょうか? 以下のようなスクリプトを実行するだけでエラーログに表示されています。 <?php $hostname = "localhost"; $user = "AAAAAAAA"; $password = "XXXXXXXX"; $res = mysql_connect($hostname, $user, $password); mysql_close($res); ?> サーバー会社に問い合せたらスクリプトを確認するように言われたのですが、お手上げになってしまいました。 どうぞよろしくお願いいたします。

    • ベストアンサー
    • PHP
  • PEARのインストールの仕方を教えてください

    こんにちは,よろしくお願いします。 PHPプログラミングを勉強しています。(Windows XP,Apache) PEARの基本機能をインストールしようとして,MS-DOSのコマンドラインからgo-pearを実行しました。そうしたところ,次のようなWarningが表示されて,どうもうまくいっていないようです。どうすればうまくいくのでしょうか?何が悪いのでしょうか? C:\php>go-pear PHP Warning: PHP Startup: pdf: Unable to initialize module Module compiled with module API=20050922, debug=0, thread-safety=1 PHP compiled with module API=20060613, debug=0, thread-safety=1 These options need to match in Unknown on line 0 Are you installing a system-wide PEAR or a local copy? (system|local) [system] : 当然,パッケージのダウンロードやインストールもうまくいきません。pearコマンドは内部コマンドにも外部コマンドにも無いという旨のメッセージが出て,それより先に進みません。(c\phpには,pear.ini以外にpear.*というファイルはありませんでした。) パッケージのインストールまでできる方法を教えてください。(別な方法でもかまいません。)よろしくお願いします。

    • ベストアンサー
    • PHP