1

mySqlの特定の行IDから「Content」値を取得しようとしています。結果をPHPにエコーしましたが、「ユーザー'' @'localhost'のアクセスが拒否されました(パスワード:NOを使用)」が表示されました。phpMyAdminでクエリを確認しようとしましたが、期待どおりの結果が得られました。

これが私のコードです:

$con = mysql_connect("localhost", "XXX", "XXX") or die (mysql_error());
$db = mysql_select_db("XXX", $con) or die (mysql_error());

function head($d) {
        $query = mysql_query("SELECT Content FROM list WHERE ID = '$d'") or die(mysql_error());
        $post = mysql_fetch_assoc($query);
        echo $post["Content"];
}


<h1> <?php head(1); ?> </h1>

どうもありがとう。

4

3 に答える 3

3

引用したエラーメッセージは、電話をかけているときにデータベースがまだ接続されていないように聞こえます。接続が存在しない場合はmysql_query()、デフォルト値 (通常は空) で接続を確立しようとします。

クエリを実行する前に、プログラム フローを確認し、実際にデータベースに接続されていることを確認する必要があります。

于 2013-03-02T20:18:30.890 に答える
0

問題は

mysql_connect("localhost", "ncode_hana", "NOAM7778") 

sqn ユーザーとパスが正しく、このユーザーが選択したデータベースに対する権限を持っていることを確認してください...

また、元のユーザー ID とパスワードを誰とも共有しないでください。

また、ペッカが言ったように、このようなものが必要です

<h1> <?php include('yourdatabaseconnectionfile.php'); ?> <?php head(1); ?> </h1>

代わりに

 <?php
    $con = mysql_connect("localhost", "XXX", "XXX") or die (mysql_error());
    $db = mysql_select_db("XXX", $con) or die (mysql_error());

    <h1> <?php head(1); ?> </h1>


    function head($d) {

            $query = mysql_query("SELECT Content FROM list WHERE ID = '$d'") or die(mysql_error());
            $post = mysql_fetch_assoc($query);
            echo $post["Content"];
    }

もう1つのオプション は、関数に接続文字列を追加します(ただし、お勧めしません)

     function head($d) {
mysql_connect("localhost", "ncode_hana", "NOAM7778"); 
                $query = mysql_query("SELECT Content FROM list WHERE ID = '$d'") or die(mysql_error());
                $post = mysql_fetch_assoc($query);
                echo $post["Content"];
        }
于 2013-03-02T20:17:27.657 に答える
0

最初の 2 行を関数に移動します。

function head($d) {
$con = mysql_connect("localhost", "XXX", "XXX") or die (mysql_error());
$db = mysql_select_db("XXX", $con) or die (mysql_error());

        $query = mysql_query("SELECT Content FROM list WHERE ID = '$d'") or die(mysql_error());
        $post = mysql_fetch_assoc($query);
        echo $post["Content"];
}


<h1> <?php head(1); ?> </h1>
于 2013-03-02T20:17:47.750 に答える