2

PHP を Apache 環境の MySQL データベースに接続するのに苦労しています。この問題を自分で解決しようとしましたが、この問題に時間を費やしすぎて解決できません。

私のphp.iniファイルには、次のものがあります (広範な調査の結果、これは必要な INI ステートメントのコンセンサスのようです)。

; Directory in which the loadable extensions (modules) reside.
; extension_dir = "./"
extension_dir = "C:\php\ext"
extension=php5apache2_2.dll

extension=msql.dll
extension=php_mysql.dll
extension=php_mysqli.dll

mysql.default_port = 3607

mysqli.default_port = 3306

私のApachehttpd.confファイルでは:

LoadModule php5_module "C:/php/php5apache2_2.dll"
ServerName localhost:80

DocumentRoot "C:/Apache2/htdocs"

AddType text/html .shtml
AddType application/x-httpd-php .php
AddType application/x-httpd-php .phtml

extension=php_msql.dll

PHPIniDir "C:/php"

PHP 5.2.17、Apache 2.2.22(Wind32)、および MySQL 5.2 を使用しています。

PHP スクリプトは、<?php phpinfo(); ?>. MySQL Workbench を使用して、スキーマ、テーブル、スクリプトなどを作成できます。

PHPInfoのページにMSQLが表示されない場合、何かが正しくインストールされていないことをどこかで(何時間も答えを探した後)読んだことがありますか?提案どおりに再インストールしましたが、役に立ちませんでした。サービスを開始/停止し、変更後に定期的に再起動して、変更が確実に反映されるようにしました。

Windows Vista を搭載したラップトップで作業しています。MySQL にアクセスしようとすると、次の致命的なエラーが発生します。

致命的なエラー: 未定義関数 mysql_connect() の呼び出し

このインストールの新人へのヘルプは大歓迎です!

4

3 に答える 3

1

同様の問題がありました。phpフォルダーからphp.iniファイルをロードしていないことが判明しました(ええ、ばかげています)私は言ったphpinfoをチェックしました...

「構成ファイル (php.ini) パス」は「C:\Windows」に設定されていました。そのディレクトリにphp.iniを配置すると、出来上がりです。

... WAMP をインストールしておけばよかった

于 2012-09-07T05:06:24.763 に答える
0

成功!!!!

私は他の誰かのための解決策を持っているとは主張しません、しかし、これは多くの旋回の後に私のために最終的に働いたものです。私はWindowsVistaベースの環境FYIに取り組んでいます。

アンインストール:MySQL、Apache、PHP。関連するすべてのサービスが実行されておらず、削除されていることを確認します(通常、アンインストールがこれを処理しますが、常にではありません)。本質的に、スレートをきれいにします。

Apache 2.2.22のグループをダウンロードしたwww.WAMPServer.comにアクセスします(これが許可されているかどうかはわかりません)-MySQL 5.5.24-PHP 5.4.3 XDebug 2.1.2 XDC 1.5 PhpMyadmin 3.4.10.1 SQLBuddy 1.3.3 webGrind 1.0

インストールのために、私は単に画面のプロンプトに従いました。

次のようないくつかの構成設定があります。HTTPD.CONF内

ServerRoot (set according to where Apache is installed)
Listen 80
ServerName localhost:80

LoadModule php5_module "c:/wamp/bin/php/php5.4.3/php5apache2_2.dll"
* Note the above line - you may have to copy the dll into that directory if not there


#
# This should be changed to whatever you set DocumentRoot to.
#
# <Directory "c:/wamp/www/">
<Directory "C:/wamp/bin/apache/apache2.2.22/htdocs">
* Note - above line will be changed to match your htdocs directory


#
# "C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin"
# CGI directory exists, if you have that configured.
#
<Directory "C:\wamp\bin\apache\apache2.2.22\cgi-bin">

* In the section <IfModule mime_module>

AddType application/x-httpd-php .php
AddType application/x-httpd-php .php3

AddType text/html .shtml
AddOutputFilter INCLUDES .shtml

* Note at the end of the CONF file set the directory where the PHP.INI file is located

PHPIniDir "C:\wamp\bin\php\php5.4.3"

PHP.INIファイルの場合:

extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_pdo_mysql.dll
extension=php_pdo_sqlite.dll

My.INIファイルの場合:

# The MySQL server
[wampmysqld]
port        = 3306
socket      = /tmp/mysql.sock
key_buffer = 16M
max_allowed_packet = 1M
table_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
basedir=c:/wamp/bin/mysql/mysql5.5.24
log-error=c:/wamp/logs/mysql.log
datadir=c:/wamp/bin/mysql/mysql5.5.24/data

[mysqld]
port=3306

その後、MySQL.comにアクセスして、MySQLWorkbenchGUIツールをダウンロードしました。これを使用して、データベース、スキーマ、テーブルなどを作成します。ワークベンチを最初に使用するときは、正しいポート番号3306(または優先ポート)があることを確認してください。ユーザーとパスワードを作成する場合は、「接続」ステートメントで使用されるため、それらに注意してください。

忘れそうだった。2つのdllがPHP/Extディレクトリphp_mysql.dllとphp_mysqli.dllにあることを確認します

私はオフで実行しています...これがあなたの問題を解決するのに役立つことを願っています。

よろしく、テリー

于 2012-08-21T11:25:17.403 に答える
0

以下を試してください

libmysql.dllをパスc:\windows\system32にコピーします。ファイルは C:\php\ ルート フォルダーにある必要があります。PC を再起動します。

Windows での拡張機能のインストールの セクションを参照してくださいhttp://php.net/manual/en/install.windows.extensions.php

于 2012-08-19T12:38:59.627 に答える