php7 using mysql extension, Uncaught Error: xxx で未定義の関数 mysql_connect() をコールしています。
phpのバージョン番号
C:\Users\aaron>php -version
PHP 7.1.10 (cli) (built: Sep 26 2017 20:04:32) ( ZTS MSVC14 (Visual C++ 2015) x64 )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
データベースリンクのコードを実行する
このコードは有害です、v7バージョンはもう動作しません
以下を使用します。
close();
? >
参考 http://blog.csdn.net/liu_xueping/article/details/52251067
質問
致命的なエラーです。Uncaught Error: E:/... の未定義関数 mysql_connect() への呼び出し。
これは、mysqlデータベースへのリンクに問題があることを意味します。
phpinfo();を実行すると、以下の2つのphpの構成が確認できます。
<テーブル キー 値 設定ファイル(php.ini)のパス C:\WINDOWS ロードされた設定ファイル (なし)問題発見!C:⇄WINDOWSの下にもphp.iniがなく、Loaded Configuration Fileも空っぽです。
解決方法
-
php インストールのルートディレクトリにある php.ini-development ファイル (php.ini-production という名前を見て、これは本番環境用に設定されていることがわかります) を見つけて php.ini にリネームし、 extension=php_mysql.dll と mysqli.dll の前のセミコロン extension=php_ を削除してください。
-
php_mysql.dll および php_mysqli.dll ファイルがあるかどうか、そのフォルダを確認してください。
-
次に、php.ini で extension_dir="your path" の前のセミコロンが削除されているかどうかを確認し、削除されていなければ、その前のセミコロンを削除してください。
-
最後に、php.ini ファイルを C:\windows ディレクトリにコピーし、php_mysql.dll と php_mysqli.dll ファイルを C:\WindowsSystem32 ディレクトリにコピーしてください。
-
サービスを再起動します。
PHP v7 非推奨の拡張機能
https://stackoverflow.com/questions/34903896/what-happened-to-php-mysql-dll
https://wiki.php.net/rfc/remove_deprecated_functionality_in_php7
以下の拡張子は推奨されません。
ext/ereg (PHP 5.3 以降; ext/pcre を代わりに使ってください) REMOVED (PECL 拡張モジュール)
ext/mysql (PHP 5.5 以降; ext/mysqli あるいは ext/pdo_mysql を使ってください) REMOVED (PECL 拡張モジュール)
ということで、上記の解決策のphp_mysql.dllは見つからないので、php_pdo_mysql.dllに置き換えます。
関連
-
[解決済み】#1273 - 不明な照合順序:'utf8mb4_unicode_520_ci'
-
コマンドでmysqlに接続中、'mysql'が内部または外部コマンドとして認識されない エラーは解決されました。
-
[解決済み] MySQL Workbenchが「このサーバーバージョンでは、この位置は無効です」というエラーを報告する。
-
[解決済み] エラー1022 - 書き込みできません; テーブルに重複したキーがあります。
-
[解決済み] エラーコード1111。グループ関数の無効な使用
-
[解決済み] 'PDOException' with message 'SQLSTATE[HY000] [2002] No route to host
-
[解決済み] Q: MysqlワークベンチのデフォルトのExportパラメータとして、-set-gtid-purged=OFFを設定するには?
-
この操作には(少なくとも)1つのRELOAD権限が必要です。
-
初期通信パケットの読み込み」でMySQLサーバーに接続できなくなり、システムエラーが発生しました。0
-
ubuntu mysql8.0.23 データ移動後の問題 datadir 'abstractions/mysql' を開くことができませんでした。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Fatal error: mysqldをrootで実行する方法は、マニュアルの「セキュリティ」セクションをお読みください。
-
[解決済み】MySQL エラー #1133 - ユーザー テーブルに一致する行が見つかりません。
-
[解決済み] mysqldです。dir を data に変更できません。サーバーが起動しません
-
[解決済み] whereステートメントによるmysqlの一括更新
-
[解決済み] MongoDBのようにMySQLにもTTLがあるのでしょうか?
-
[解決済み] 1行目の列 'id' に不正な整数値 '' があります。
-
[解決済み] MySQLの グループ関数の無効な使用
-
[解決済み] Sequelize:イーガーロードする方法、関連付け、生:真?
-
[解決済み] XAMPP - フェイタルエラー。未定義の関数mysql_connect()をコールしています。
-
エラーNo.2003 '10.88.49.122' のMySQLサーバーに接続できません (10061)