概要: 最近 PHP プログラミングを学習しました。システムは MAC OS ですが、次のようにデータベースに接続できません。
たとえば、mamp ホームページのプロンプトに従って、データベース接続のテスト コードを入力します。
http://localhost:8888/ Web ページには空白のプロンプトが表示されません。
$user = 'root';$password = 'root';$db = 'inventory';$host = 'localhost';$port = 8889;$link = mysqli_init();$success = mysqli_real_connect( $link, $host, $user, $password, $db, $port);
$host='localhost'; $user='root'; $password=‘root’; $database=‘mysql’; $port=8889; $socket=':/Applications/MAMP/tmp/mysql/mysql.sock'; $dbc = mysqli_connect($host, $user, $password, $database,$port,$socket) or die(mysqli_connect_error());
<?php $link=mysql_connect("localhost","root", "root"); if(!$link) {echo "ok";}else {echo "false"; }?>
ディスカッションへの返信 (解決策)
MAC を使用したことがありません。仮想マシンをインストールし、Windows システムをインストールし、wamp 環境をダウンロードして使用することをお勧めします。
どちらを使用していますか?これら 2 つを使用するには、php-mysql 拡張機能と php-mysqli 拡張機能をインストールする必要があります。
出力に mysql および mysqli 拡張機能があるかどうかを確認します。存在しない場合は、インストールが失敗したことを意味します。両方の拡張機能を再インストールする必要があります。
<?phpphpinfo();?>
ただし、ファイルはファインダーなので無視しましょう。 。 。
第 3 条 3. mysql を起動し (注 2 を参照)、コマンド STATUS を実行します。UNIX ソケットの値に注意してください。
この STATUS コマンドの入力方法は?分かりません、説明してください!
http://ju.outofmemory.cn/entry/144933
と書かれています。 「解決策も信じられないほど簡単です。サンドボックスに PHP バイナリのソフト リンクを作成し、それを置くだけです。」 / たとえば、usr/local/bin に php55 という名前を付けます。今後データベースに接続する必要があるスクリプトを実行するときは、必ず php55 をインタープリタとして使用すると、スムーズに実行されます。 🎜>
ソフトリンク方法を試しましたが、役に立たないようで、またクラッシュします
ターミナル入力 In -s /Applications/MAMP/tmp/mysql /usr/local/bin
表示: -bash : In: コマンドが見つかりません
Mac は知りませんが、コマンドが見つからないということは見覚えがあります。システム環境変数に問題があるようです。
元の投稿者の Mac には PHP が 2 つあると推測されます。拡張機能がインストールされているものは PHP56、もう 1 つは php55 です。
/usr/local/bin/php -v
を参照してください。同じであれば、それが問題です。
インストールされている php パスに /usr/local/bin/php をソフトリンクするだけです。
まず、エラー メッセージを有効にします。
どのようなエラー メッセージがあるかを確認してください
最後に、PHP のデータベースのポート番号が間違っていることがわかりました。修正したら大丈夫でした、皆さんありがとうございました!