convert関数が呼び出せない

このQ&Aのポイント
  • PHPのconvert関数が呼び出せず、Fatal errorが発生しています。
  • MySQLのCommand Line Clientではconvert関数が使用できているため、PHPが関数を認識していない可能性があります。
  • php.iniファイルの設定や環境変数の確認が必要です。
回答を見る
  • ベストアンサー

convert関数が呼び出せない

お世話になります。 PHP 5.2.13 MySql 5.5 $date = convert('20111001', DATE);  …(1) を実行すると下記のエラーが出ます。 Fatal error: Call to undefined function convert() MySQL Command Line Clientで select convert('20111001', DATE) は問題なく出来るでの、PHPがこの関数を認識していないのかと思いphpinfo()の後に(1)のコードを加えてみた所同じエラーが出ました。 php.iniファイルの設定は extension_dir = "c:\php\ext" extension=php_mysql.dll (セミコロン削除済み) c:\php\ext\php_mysql.dll も存在します。 Windowsの環境変数には C:\PHP が設定済みです。 問題点・解決法をご存知の方がいらっしゃいましたら、どうかご教授の程よろしくお願い致します。

  • MySQL
  • 回答数2
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

かなり意味不明・・・ >$date = convert('20111001', DATE); MySQLの関数をPHPで実行するってどういうことでしょう? PHPから手続きにもとづいてMySQLにコネクトして、 "select convert('20111001', DATE) AS hoge"を発行した上で 戻り値を配列でうけて添え字hogeの値を得てみては?

nekoko_green
質問者

お礼

ご指摘ありがとうございます。 PHPとMySQLがごっちゃになっていました。 お恥ずかしい限りです・・・。(〃_ _)σ お陰様で、勘違いに気づきました。 解決法もご丁寧にありがとうございました。

その他の回答 (1)

回答No.1

何を勘違いされているのか・・・。 php_mysql.dllで有効になるのは http://php.net/manual/ja/ref.mysql.php の一覧にある関数です。

nekoko_green
質問者

お礼

確かに勘違いしておりました。 お恥ずかしい限りです…。 ご指摘頂き、とんでもない勘違いをしていた事に気がつきました。 ご丁寧に、一覧もありがとうございました。

関連するQ&A

  • マルチバイト関数の呼び出し方

    PHP初心者です。 xamppをインストールし、mb_convert_kana()を使うと、 Call to undefined function: mb_convert_kana() in というエラーがでました。 php.ini上の extension=php_mbstring.dllのコメントははずしてあります。 Configuration File (php.ini) PathはC:\XAMPP\apache\bin\php.ini にあります。 phpinfoを確認してもmbstringやConfiguなどの単語がみあたらず どう設定していいのかわかりません。 同じような質問をみて修正しましたが、いまだ関数を使えずにいます。 試したことは、 Configuration File (php.ini) PathをC:\WINDOWS\php.ini に置いたことです。 windowsXP PHP Version 4.4.7 宜しくお願いします。

    • ベストアンサー
    • PHP
  • MySQLとPHPがつながりません。

    MySQL5.1 Apache2.0 PHP5.2.4をインストールしたのですが、MySQLとPHPがつながりません。 phpinfoを見ても、libxmlとodbcの間に本来あるべきMySQLがありません。 C:\WINDOWS\php.iniにある、 extension=php_mysql.dll extension=php_mysqli.dll のセミコロンは外しています。 php5ts.dllはC:\WINDOWSに、libmysql.dllはC:\System32とC:\Apache2\binにコピー済みです。 php_mysql.dllやphp_mysqli.dllもコピー済みです。 それでも反映されず、やけくそで各フォルダに全種類dllをコピーしたりもしましたがやはり反映されません。 そして、この状態でWEB上からPHPにアクセスすると、 Fatal error: Call to undefined function mysql_pconnect() in C:\Apache2\htdocs\include\setup.php on line 7 というメッセージのサイトが出てきます。 恐らくphpinfoにMySQLが反映されれば解決すると思うのですが、どのようにすれば良いのでしょうか。 どなたか宜しくお願いします。

    • ベストアンサー
    • MySQL
  • MySQLとPHPの連携がうまくいかない

     プログラマ初心者ですが、以下の質問があります。  PHPからMySQLへの接続がうまくいかなくて困っています。  まず、使っているバージョンは以下の通りです。  MySQL 5.0.27  PHP 5.2.0  Apache 2.2.3  Windows XP Profesional  そして、エラーメッセージは以下のとおりです。  Fatal error: Call to undefined function mysql_connect() in C:\Usr\Apache\htdocs\db0.php on line 6  各サイトで解説されている以下の設定はすべて行いましたが、それでもできないようです。  ・Windowsフォルダにphp.iniをコピーする。  ・php_mysql.dll、php_mysqli.dll、libmysql.dllをsystem32にコピーする。  ・iniファイルにextension_dir=C:\php5\extとセットする。  ・iniファイルのextension=php_mysql.dll、extension=php_mysqli.dllのセミコロンをはずす。  他の方の解決策は以下のどれかが抜けていたというようなものらしいですが、私の場合はどれも抜けていないのに駄目だという状態です。  MySQL、Apacheは正常に動いています。(関係ないかもしれませんが、PerlとMySQLの連携は問題なく動いています)  どなたか解決策がわかる方は教えてください。

    • ベストアンサー
    • MySQL
  • 泣きそうです>< PHPでSQLite3が使えない

    こんばんは 何をどうやっても進まないのでここで質問させてください。 Windows 8にwamp (Apache 2.2.22, PHP 5.4.3) を入れています。 SQLite3を使いたいのですが、sqlite_open 関数に対して「undefined function」というエラーが出てしまいます。 php.ini の内容は次のようになっています。 ;ここから extension_dir = "c:/wamp/bin/php/php5.4.3/ext/" (中略) extension=php_pdo_sqlite.dll ;extension=php_sqlite.dll extension=php_sqlite3.dll (中略) [sqlite] ; http://php.net/sqlite.assoc-case ;sqlite.assoc_case = 0 [sqlite3] sqlite3.extension_dir = "c:/wamp/bin/php/php5.4.3/ext/" ;ここまで 実際、エクステンションディレクトリには php_pdo_sqlite.dll php_sqlite.dll php_sqlite3.dll があります。 phpinfo(); では PDO drivers:mysql, sqlite SQLite Library:3.7.7.1 [sqlite3] SQLite3 support:enabled SQLite3 module version:0.7 SQLite Library:3.7.7.1 sqlite3.extension_dir:c:/wamp/bin/php/php5.4.3/ext/ いったい何が行けないのでしょうか、iniの値を変えるとphpinfo()も変わるので誤った設定ファイルをいじっているのではないと思います。 バージョンなどは冒頭に記載しています。 よろしくお願いします。

  • PHP拡張モジュールが読み込めない?

    環境 OS:windowsXP Apache ver 2.2 PHP ver 5.1.4 問題の発端はphpからMySQLを呼び出す時に下記のエラーが出た事に始まりました。 Call to undefined function mysql_connect() 恐らくextensionファイルがうまく読み込めてないものと思われるのですが、php.iniの設定でしょうか? extension関連の設定は以下になっています。 extension_dir = "C:\php\ext" extension=php_mysql.dllのコメントアウトをはずす。 phpinfo()で確認してみましたが、表示されるのはConfiguration PHP Core まででその他の設定は表示されません。 extension_dirの項目は変更すると反映されるみたいですので、php.iniは読み込めていると思うのですが…。 GD2モジュールのサンプルも動かしてみましたが、やはり駄目でした。 ApacheのhttpdconfでPHPIniDirを設定しても結果は同じでした。 どなたか、原因の解る方いらっしゃいますでしょうか?

    • ベストアンサー
    • PHP
  • hpinfoにmysqlやmysqliが表示されない

     現在、Windows2003 サーバ(IIS6.0)、PHP5.4.3、mysqlは5.0.45に環境を構築しています。phpは実行でき、コマンドからはMySQLに接続できますがphpプログラムから接続できません。  そこで調べていたのですが、phpinfoにmysqlやmysqliが表示されていません。phpとMySQLの接続がうまくいっている環境ではphpinfoにmysqlやmysqliが表示されているのでこれが原因だと思われます。 他の人の投稿から下記のことは確認いたしましたが、どうしても上手くいきません。よろしくお願いいたします。 ・php.iniはC:\Windowsに存在します。またphp.iniファイルは1つしかありません。 ・php.iniファイルの下記の項目は変更しました。  extension_dir = "C:\php\ext"  extension=php_mysql.dll  extension=php_mysqli.dll

    • 締切済み
    • PHP
  • 【MySQL+php】 MySQL が認識されない

    windows vista home apache2.2 php5.2.3 MySQL5.0 上記の環境です。 php.iniのextensionのところで、 extension=php_mbstring.dll の行頭のセミコロンを つけたり外したりすればphpinfoで見た確認画面にも反映されます。 extension=php_mysql.dll の行頭のセミコロンを つけたり外したりしてもどうしてもMySQLが組み込まれません。 MySQL単体ではインストールもしてありプロンプト画面から 操作できます。 インストール順はMySQL→apache→phpの順でしました。 MySQLをphpで使うためにはどうすればよいでしょうか。 よろしくお願いいたします。

    • ベストアンサー
    • MySQL
  • MySQLを認識していない?

    Windows Vistaで apache2.0.61 + PHP5.2.4 + MySQL5.0.14 でシステム構築をしています。 書籍は、 「PHP5.0 + MySQL5.0 で構築する最速Webシステム」を参考にしています。 その中で、PHPの設定を以下のように行いました。 ・「php5ts.dll」を「C:\Windows\System32」にコピー ・「libmysql.dll」を「C:\Windows\System32」にコピー ・「php.ini-dist」を「php.ini」にリネームして「C:\Windows」にコピー ・「php.ini」の編集  1.拡張モジュールを置くフォルダを指定    extension_dir = "C:/php5/ext"  2.PHPからMySQLを利用するための設定    extension=php_mysql.dll(先頭の;を削除) それぞれ単体では動作確認が取れているのですが、 ・apache(http://localhost/で動作確認) ・PHP( phpinfo() でパラメータ表示) ・MySQL(コマンド入力で確認) MyAdmin をインストールして、 http://localhost/phpmyadmin/ にアクセスすると、 「mysql 拡張をロードできません。PHP の設定を確認してください」 とエラー表示されます。 また、 書籍に付随しているDB読み込みサンプルを実行すると、 「Fatal error: Call to undefined function mysql_connect() in C:\Apache2\htdocs\photolib\regdatelist.php on line 10」 とエラー表示されます。 2つのエラーの内容は、MySQLを認識していないということだと思うのですが、 (PHP5ではMySQLが標準ではハンドルされていないので) 「php.ini」でその設定はしているハズです。 また、過去ログ(QNo.3173055)の回答で、 「phpinfoで、Configuration File (php.ini) Pathのパスは正しいですか? また、extension_dirのパスはどうなっていますか?」 とありましたが、これらのパスはどうやって確認すればよいのでしょうか? どこが悪いのか分りません。 何方か、アドバイスをお願いいたします。

    • ベストアンサー
    • MySQL
  • マルチバイト関数

    今ちょうどマルチバイト関数について勉強(独学)してるところなのですが マルチバイト関数をプログラム中で使えません。 私のプログラムが間違ってるのかと思い、サンプルをそのままコピーしたもの。 それを実行してみたのですが結果は同じでした。 Fatal error: Call to undefined function mb_substr() in C:\...\4-1.php on line 3 といったようなエラーです。 上手く設定がいってないのかなとphp.iniを見直すことにしました。 今phpのモジュールはC:\phpに解凍した中のextに入ってます。 ですから extension_dir = "C:\php\ext" といった風に設定しました。そして extension=php_mbstring.dll のように書きました。 C:\php\ext以下にこのphp_mbstring.dllが存在することは確認済みです。 テキストではこれで上手くいっているのでApacheを再起動して実行してみましたが どうしても先ほどのエラーが出て先に進みません。 いったいどうすれば使えるようになるのか教えていただけませんか?

    • ベストアンサー
    • PHP
  • PHP5.26でPDO(MySQL)が設定できません

    設定を確認しましたがphpinfo()のPDOの欄がno valueのままです。 PDOを使おうとすると"could not find driver"となります。 PHPのセットアップ時に選択するようになっていたので、 それ以外は何もしていないと思います。 --------------------------------------------------- 環境:Windows/PHP5.26/Apache2.28/MySQL5.0 ■php.ini内 [PHP_PDO] extension=php_pdo.dll [PHP_PDO_MYSQL] extension=php_pdo_mysql.dll [PHP_MYSQL] extension=php_mysql.dll extension_dir ="C:\Program Files\PHP\ext" ■"C:\Program Files\PHP\ext"内 php_pdo_mysql.dll php_pdo.dll php_pdo_mysql.dll 試しにセットアップで全てのDB用のPDOを選択すると、「odbc, sqlite, user」のみ 表示されるようになりました。。 よろしくお願いします。

    • ベストアンサー
    • PHP