我想从db记录中查询单个帖子(标题,正文,日期)
例如我有我的查询..
$query = 'SELECT * FROM posts WHERE id=$post_id';
从该查询中,如何在没有while或foreach循环的情况下回显标题?
答案 0 :(得分:5)
你可以只调用mysql_fetch_assoc()(或任何类似的函数)。像这样:
$sql = "SELECT * FROM table";
$row = mysql_fetch_assoc( mysql_query($sql) );
echo $row['title'];
这是使用MySQL函数执行此操作的最简单,最易读的方法。
答案 1 :(得分:3)
您可以使用mysql_result:
$sql = 'SELECT * FROM posts WHERE id=$post_id';
$query = mysql_query($sql);
echo mysql_result($query, 0, 'title');
这将回显第一行(0)的字段title
。
答案 2 :(得分:1)
当您使用mysql_fetch_array
等函数时,您没有义务进行迭代。甚至,当你这样做时,你只是得到下一行的结果,直到它返回null:
$query = mysql_query("SELECT * FROM table");
while($row = mysql_fetch_array($query)) {
var_dump($row);
}
因此,对查询中的每一行执行此操作在技术上是相同的:
$query = mysql_query("SELECT * FROM table");
$row = mysql_fetch_array($query)
var_dump($row);
// Array()
$row = mysql_fetch_array($query)
var_dump($row);
// Array()
$row = mysql_fetch_array($query)
var_dump($row);
// null < the "while" statment will stop here
然后,您可以拨打mysql_fetch_array
一次即可。
答案 3 :(得分:1)
您可以使用此代码进行选择查询,而无需使用while循环:
$ conn是数据库连接
$sql = "SELECT * FROM teacher_details";
$row = mysqli_fetch_assoc($conn->query($sql) );
$teacher_name = $row['teacher_name'];