您好,我正在尝试为我的网站创建标签脚本,因此每次搜索引擎进入我的网站时,我的网站上都会显示10个不同的标签。
这些标签将从数据库中获取。因此,目前我已经对其进行了编码,因此它只能捕获一个。(因为我不知道该怎么做while)
像这样
$sql = "SELECT tagname FROM tags ORDER BY rand() LIMIT 10"; $result = mysql_query($sql); $row = mysql_fetch_object($result); echo "" .$row->tagname. " "; 无论如何,我可以添加一点时间,以使其执行10次吗?例如,使用相同的回显,但打印出10个结果而不是1个。...我将限制从1更改为10,但这没有用...仍然显示一个...
请注意,请在真正的答案之前阅读:有关不断贬低该答案的内容。阅读标题(以“ Doing一会儿 ” 开头)和最后一部分,问题(“反正我可以在那儿加上一会儿,所以它会重复十次吗?”)。这个答案是关于迭代结果集,而不是关于RAND函数的用法!该查询甚至没有出现在我的答案中,并且我还建议在结尾处使用另一种方法:
您只需要在循环中包装对mysql_fetch_object的调用
$result = mysql_query($sql);
while ($row = mysql_fetch_object($result)) { echo "" .$row->tagname. " "; } 以后编辑 其他注意事项将是:
如果表中包含大量数据(但似乎没有),则按rand()进行排序会对性能产生不良影响 考虑使用pdo(或至少使用mysqli) 即使查询看起来很完美,您也应该进行一些错误处理,至少
如果(!$ result){echo mysql_error(); 死; }来源:stack overflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。