0

我正在尝试从表中获取数据。表包含数据并且查询为真。甚至为什么下面的查询说$u并且$t没有定义。而条件变为假。

我手动签入数据库,它正在显示结果。

$url = "http://paulgraham.com/";
$user_id = "123";
$con = mysqli_connect('127.0.0.1', 'root', '', 'mysql');
if (mysqli_connect_errno())
{
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
    return;
}
$result = mysqli_query($con,"SELECT * FROM post_data WHERE userid =".$url." and url=".$user_id."");
while ($row = @mysqli_fetch_array($result))
{
    echo "hi";
    $t = $row['title'];
    $u = $row['url'];

}

echo "title is : $t";
echo "url is : $u";
4

2 回答 2

1

如果您能够看到 DBMS 向 PHP 报告的错误,那么您可能能够找出代码出了什么问题。

在“while”循环之前尝试...

print mysql_error();

(它失败的明显原因是字符串必须在 SQL 中被引用,并且你的参数是错误的)

于 2013-10-31T16:44:04.947 回答
1

给出你的 SQL 查询:

"SELECT * FROM post_data WHERE userid =".$url." and url=".$user_id.""

您可以看到您正在混合 url 和 userid... 更改为:

"SELECT * FROM post_data WHERE userid =".$user_id." and url=".$url.""

如果您没有记录,请在循环之前定义您的$t和变量。$u下次,尝试对var_dump您生成的查询进行测试。

于 2013-10-31T16:36:27.200 回答