我试图从我的数据库中获得一个结果,只有一个名字
我尝试过使用;
$row = mysql_fetch_array(mysql_query("SELECT * FROM persons WHERE id = '$id'"));
echo $row['name'];
但这不起作用,任何其他方式只显示一个结果?
提前谢谢!
[编辑:]
(我使用的是PHP 5.3)
<?php
include("connection.php");
$id = $_GET['deletid'];
$result = mysql_query("SELECT * FROM persons WHERE id = '$id' LIMIT 1");
if(!$result){
echo mysql_error();
}
if ($row = mysql_fetch_array($result)){
echo $row['name'];
}
echo "<p>id:$id</p>";
?>
答案 0 :(得分:2)
如果您只需要名称,并且只需要一个结果,则应按以下步骤重写查询:
$row = mysql_fetch_array(mysql_query("SELECT name FROM persons WHERE id = '". (int) $id ."' LIMIT 1"));
现在要获得结果,你应该用
来获得它$row['name'];
修改强> 既然您发布了整个代码,那我就错了:您在获取其名称之前删除了该结果。基本上你删除该用户然后尝试获取其名称。 的修改
<?php
include("connection.php");
if (empty($_GET['deleteid'])) {
exit('"deleteid" is empty');
}
$id = mysql_real_escape_string($_GET['deletid']);
$result = mysql_query("SELECT name FROM persons WHERE id = '". (int) $id ."' LIMIT 1");
if(!$result){
echo mysql_error();
}
$row = mysql_fetch_assoc($result); // for just one result you don't need of any loop
echo $row['name'];
echo "<p>id:". htmlspecialchars($id) ."</p>";
?>
答案 1 :(得分:0)
尝试
$row = mysql_fetch_array(mysql_query("SELECT name FROM persons WHERE id = ". (int) $id));
echo $row['name'];