Php 页面赢得';MySQL查询返回后是否加载?

Php 页面赢得';MySQL查询返回后是否加载?,php,mysql,mysqli,Php,Mysql,Mysqli,我有一个简短的问题,对我来说没有什么意义。我对MySQL和PHP有点陌生,所以我可能只是缺少了一些东西。这是我的密码: $conn = new mysqli('localhost', 'Josh', '**********', '********'); if ($conn->connect_error) die('Connection failed: ' . $conn->connect_error); $result = $conn->query('SELECT coun

我有一个简短的问题,对我来说没有什么意义。我对MySQL和PHP有点陌生,所以我可能只是缺少了一些东西。这是我的密码:

$conn = new mysqli('localhost', 'Josh', '**********', '********');
if ($conn->connect_error)
  die('Connection failed: ' . $conn->connect_error);
$result = $conn->query('SELECT count(*) as cnt FROM users WHERE id = 1');
$f = $result->fetch_array();
if ($f->cnt == 0) {
    echo 'doesn\'t exist';
} else if ($f->cnt == 1){
    echo 'does exist';
}
如您所知,这将检查表中是否存在
id
。如果存在,则回显
“确实存在”
,否则回显
“不存在”
。然而,我有一个小问题。每当我将
id=1
替换为不存在的
id
时,它会立即加载并回显
“不存在”
。但是,当我使用表中确实存在的id时,页面会加载,但仍然回显
“不存在”

有人能帮我吗

谢谢,,
Josh

由于id是一个整数,我们可以用以下方式编写查询:

$result = $conn->query('SELECT id FROM users WHERE id = 1');
if ($result->num_rows == 0) {
    echo 'doesn\'t exist';
} else {
    echo 'does exist';
}

我修改过了,试试看

$result = $conn->query('SELECT count(id) as cnt FROM users WHERE id = 1'); // or count(*)
$f = $result->fetch_object(); // or use fetch_array(),fetch_assoc() [Search the diff b/w them]
if ($f->cnt == 0) {
    echo 'doesn\'t exist';
} else {
    echo 'does exist';
}
非面向对象方法

$conn = mysqli_connect('localhost', 'Josh', '**********', '********');

if (mysqli_connect_errno())
  die('Connection failed: ' . mysqli_connect_error);

$result = mysqli_query($conn,'SELECT count(*) as cnt FROM users WHERE id = 1');

$f = mysqli_fetch_array($result); // or mysqli_fetch_assoc($result)
echo $f['cnt'];
if ($f['cnt'] == 0) {
    echo 'doesn\'t exist';
} else if ($f['cnt'] == 1){
    echo 'does exist';
}

这修复了页面加载错误,但现在它没有响应任何内容。您是否尝试了
count(*)
?。。另外,首先在phpmyadmin中测试您的查询。以下是phpmyadmin中显示的内容,是的,我尝试了
count(*)
,但没有成功。这是您通过查询应该得到的正确结果。如果结果存储在
$f
中,请尝试第2行中注释中提到的获取结果的不同功能,方法是在if语句之前回显它<代码>回声$f->cnt。。。。还要检查你的数据库连接。嗯,这没有解决问题。上面的解决方案发生了什么?你能解释一下以上代码出现的问题吗?你是指你的补丁还是你上面的人?在您的修复中,出现了相同的问题,似乎没有任何变化(当记录确实存在时,页面将不会加载,否则它将加载并回显
不存在
),我希望您可以使用以下内容检查连接是否已创建:if($conn->connect_error){die('connect error:'。$conn->connect_error);}如果连接成功创建,那么我觉得结果肯定会出现。连接已创建