首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PHP记录集和EOF

问PHP记录集和EOF
EN

Stack Overflow用户
提问于 2013-09-10 04:52:27
回答 1查看 9.8K关注 0票数 0

我觉得我知道这一点,但我越来越沮丧,因为我不能准确地记住如何做到这一点。

在PHP中,我需要在一个无序列表中重复记录集中的项。我可以很好地重复项目,但如果记录集为空,我不希望显示任何内容。现在,如果没有记录,代码仍然显示一个空白列表项,而我只想什么都不显示。

我已经尝试过了:

代码语言:javascript
复制
<?php do { ?>
    <li><a href="#">Content Goes Here</a></li>
<?php } while (!feof($recordsetName) && $row_recordsetName = mysql_fetch_assoc($recordsetName)); ?>

我尝试过将重复元素与if/else语句放在一起,如下所示:

代码语言:javascript
复制
<?php if (!feof($recordsetName)) {
    echo ""; }
else do { ?>
    <li><a href="#">Content Goes Here</a></li>
<?php } while ($row_recordsetName = mysql_fetch_assoc($recordsetName));
; } ?>

但这也不起作用。任何信息都会有帮助

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-10 04:59:37

代码语言:javascript
复制
while($row = mysql_fetch_assoc($recordsetName)) {
    if($row['fieldname'] != '') {
        echo '<li><a href="#">Content Goes Here</a></li>';
    }
}

或者您可以检查查询是否成功...

代码语言:javascript
复制
$result = mysql_query($sql);
if($result) {
    echo '<li><a href="#">Content Goes Here</a></li>';
}

或者如果它返回了任何结果...

代码语言:javascript
复制
$results = mysql_fetch_assoc($recordsetName);
if(mysql_num_rows($results) > 0) {
    while($row = mysql_fetch_assoc($results)) {
       echo '<li><a href="#">Content Goes Here</a></li>';
    }
}

此外,你真的应该使用mysqli或PDO,因为mysql已经折旧了。

编辑:在示例3中添加循环。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18706829

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档