1

我正在尝试从 mySql 中的特定行 ID 获取“内容”值,我在 PHP 中回显了结果,但我得到“用户'@'localhost'的访问被拒绝(使用密码:否)”。我尝试在 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 用户和 pass 是否正确,并且该用户有权访问您选择的数据库...

此外,切勿与任何人分享您的原始用户 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"];
    }

一个更多选项 在函数中添加连接字符串(虽然不推荐)

     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

将您的前两行移至您的函数:

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 回答