Php `虽然没有显示回声
我的回声出现问题了。我认为Php `虽然没有显示回声,php,pdo,Php,Pdo,我的回声出现问题了。我认为while有问题,但是这个表在mysql中,所以应该可以正常工作。这是我的密码 <?php $sql = $db->prepare('SELECT topic_id, topic_subject FROM topics WHERE topics.topic_id = :topid'); $sql->bindPara
while
有问题,但是这个表在mysql中,所以应该可以正常工作。这是我的密码
<?php
$sql = $db->prepare('SELECT
topic_id,
topic_subject
FROM
topics
WHERE
topics.topic_id = :topid');
$sql->bindParam(':topid', $_GET['id'], PDO::PARAM_INT);
$sql->execute();
$result = $sql->rowCount();
if($result === FALSE){
echo 'The topic could not be displayed, please try again later.';
}
elseif(count($result) === 0){
echo 'This topic doesn′t exist.';
}
else
{
while($row = $sql->fetch())
{
//display post data
echo '<table class="topic" border="1">
<tr>
<th colspan="2">' . $row['topic_subject'] . '</th>
</tr>'; ?>
应该显示while
,因为该主题存在于mysql中。当我使用var_dump($sql->errorInfo())时;
它说的是数组(3){[0]=>string(5)“00000”[1]=>NULL[2]=>NULL}
空值是因为我在mysql中创建了主题作为测试
$result = $sql->rowCount();
elseif(count($result) === 0){
$result正在分配行计数;但是count()
设计用于对数组中的元素进行计数。从
我认为你所需要的是:
elseif($result === 0){
我认为您的查询没有结果,但是对count()
的调用不起作用。它正在通过该检查,并且由于没有可检索的记录,因此不会进入循环
$result正在分配行计数;但是count()
设计用于对数组中的元素进行计数。从
我认为你所需要的是:
elseif($result === 0){
我认为您的查询没有结果,但是对count()
的调用不起作用。它正在通过该检查,并且由于没有要检索的记录,因此它不会进入循环。count($results)==0
没有任何意义,因为$result
已经包含一个整数。SQL查询返回0行,但由于count(0)
是1
,脚本不知道该做什么,因为没有涵盖这种情况
只需使用$results===0
更改count($results)==0
,然后继续找出查询不返回预期行的原因。count($results)==0
没有任何意义,因为$result
已经包含一个整数。SQL查询返回0行,但由于count(0)
是1
,脚本不知道该做什么,因为没有涵盖这种情况
只需使用
$results===0
更改count($results)===0
,然后继续找出查询没有返回预期行的原因。那么,脚本显示了什么呢?@alessandro1997听起来很奇怪,但什么也没有显示。那么,脚本显示了什么呢?@alessandro1997听起来很奇怪,但什么也没有显示