可能重复:
PHP SQL,查询只返回一行数据
我的一个朋友被要求我做一些编码.他用"gameName"(VARCHAR)和"releaseDate"(日期)列创建了一个MySQL数据库.他需要从当前日期之前发布的"gameName"中获取并显示游戏名称.
在这里,我使用了MySQL的CURDATE()函数来过滤掉已经发布的游戏.但问题是我必须为每个结果写一个回声线.这是糟糕的编程,其背后的逻辑非常糟糕.
<?php
$mysql_host="host_name";
$mysql_username="db_user";
$mysql_password="db_password";
$mysql_database="db_name";
$mysql_table="table_name";
mysql_connect("host_name", "db_user", "db_password") or die("YOLO");
mysql_select_db("db_name") or die("YOLO");
$sql = mysql_query("SELECT gameName FROM table_name WHERE CURDATE() > releaseDate");
$result = mysql_fetch_row($sql);
echo $result[0];
echo $result[1];
echo $result[2];
// and so on...?
?>
Run Code Online (Sandbox Code Playgroud)
结果:只显示一条记录.
首先,mysql_*函数已弃用,不应再使用.我强烈推荐PDO库,特别是如果您要处理用户输入.
如果你坚持坚持mysql_*,你的代码看起来应该更像这样:
$result = mysql_query("your query") or die(mysql_error());
while ($row = mysql_fetch_row($result)) {
echo $row['gameName'] . '<br />';
}
Run Code Online (Sandbox Code Playgroud)
我同意上述评论.在你太介入之前,我建议你真正阅读这些手册.拥有一点额外的知识可以对您作为程序员的效率产生重大影响(更不用说代码的安全性).
| 归档时间: |
|
| 查看次数: |
72 次 |
| 最近记录: |