この状態で、コマンドライン版のPHPを用いて、MySQLを扱う関数を使えるようにするには、どのように設定したらよいでしょうか? 現在の状況は実行すると、phpのヘルプが表示されてしまいます。
コマンドライン版 php で以下を実行すると、php が MySQL を使える状態になっているかがわかるはずです。
php -r 'phpinfo();' | grep MySQL
# MySQL Support => enabled の表示があれば利用可能
で、この行が出てこない場合は /etc/php.ini に以下の記述が必要になります。
extension=mysql.so
phpのバージョンとmysqlのバージョンが合ってないのではないですか?
mysql4.1以上はパスワード形式が違うのです。
phpが古い場合は旧パスワード形式で通信しなければなりません。
php -v
では、
PHP 5.1.4 (cli) (built: May 8 2006 08:41:41)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies
と表示されます。
rpm -q mysql
では、
mysql-5.0.22-1.FC5.1
となります。HTMLに組み込んだPHPでは作成したユーザとパスワードで
うまくいくのですが、CLIではパスワードを加工する必要があるのでしょうか?
$ php -r 'phpinfo();' | grep MySQL
MySQL Support => enabled
PDO Driver for MySQL, client library version => 5.0.22
となりなした。
enabledなのですが、PHPのスクリプトに
> mysql_connect('localhost','hogehoge','********');
を入れた途端にPHPのヘルプ一覧が表示されてしまいます。
どうしてなのでしょうか?
ちなみに、HTMLに埋め込んだPHPスクリプトでは問題なく動いています。