• 締切済み

phpmyadminのエラー

お世話になります。 掲題の件ですが、先日からphpmyadminを起動すると 下記のエラーが表示されてしまいます。 Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /export/XXX.com/phpmyadmin/libraries/config/config_functions.lib.php on line 48 該当48行目は下記となってますので $message = preg_replace('#\[a@("?)([^\]]+)\1\]([^\[]+)\[/a\]#e', "PMA_lang_link_replace('$2', '$3')", $message); ↓としたのですが $message = preg_replace_callback('#\[a@("?)([^\]]+)\1\]([^\[]+)\[/a\]#', "PMA_lang_link_replace('$2', '$3')", $message); エラーとなってしまいます。 どこに誤りがあるでしょうか。。 また、phpadminのアップデートを検討しているのですが いまのデータベースを保持したまま、アップデートすることは可能でしょうか。 宜しくお願い致します

みんなの回答

  • agunuz
  • ベストアンサー率65% (288/438)
回答No.1

手元のphpMyAdmin(4.0.9)と最新バージョン(4.2.2)のconfig_functions.lib.phpには当該ソースが見当たりません。お使いのphpMyAdminのバージョンはいくつでしょうか? >↓としたのですが eオプションの外すのはわかりますが(http://www.php.net/manual/ja/function.preg-replace.php)、preg_replaceをpreg_replace_callbackに書き替えたのはどういう意図でしょうか? >phpadminのアップデートを検討しているのですが >いまのデータベースを保持したまま、アップデートすることは可能でしょう phpMyAdminはMySQLのデータベースには何も変更を及ぼしません(至極当然のことだと思いますが・・・)。

appplus3
質問者

補足

ご回答有難うございました。 >手元のphpMyAdmin(4.0.9)と最新バージョン(4.2.2)のconfig_functions.lib.phpには当該 >ソースが見当たりません。お使いのphpMyAdminのバージョンはいくつでしょうか? おそらく3.2です >eオプションの外すのはわかりますが(http://www.php.net/manual/ja/function.preg-replace.php)、 >preg_replaceをpreg_replace_callbackに書き替えたのはどういう意図でしょうか? エラーメッセージを読むと、preg_replace は非推奨なので preg_replace_callback を使えと読み取ったからです。 ことの発端はというと、お名前comのレンタルサーバーを利用してまして 3年ほど動いていたmysqlのDBからデータを処理するPHP機能が動かなくなりました。 エラーとして出ているのは ERROR 1045: Accsee denied for 'ユーザ'@'xxx.xxx.xxx.%'(using password: YES) です。 ユーザの参照権限がなくなってしまったようなんです。 で、phpmyadminにログインしてみたところ、質問のエラーが出ていたので まずはこれを潰して見ようと思いまして。 サポートに聞いてもわからないという回答で。。 phpmyadmin4.2を入れたのですが、ユーザの権限を変更できそうもなく 途方にくれております。。

関連するQ&A

専門家に質問してみよう