我的查询无效。它不会打印记录,但在phpmyadmin中它会显示记录。
$sql1 = "SELECT fullname FROM addresses WHERE userid = 1 LIMIT 1";
$result1 = mysqli_query($conn, $sql1);
while ($row = mysqli_fetch_row($result1)) {
$fullname = $row['fullname'];
$i++; }
echo $fullname;
更新:
我的桌子上没有一把独特的钥匙。
答案 0 :(得分:4)
从结果集中获取一行数据并将其作为枚举数组返回,其中每列存储在从0(零)开始的数组偏移量中。
您的值在$row[0]
,而非$row['fullname']
。
如果您想要关联数组,请使用mysqli_fetch_assoc
或mysqli_fetch_array
。
答案 1 :(得分:0)
我相信mysql_fetch_assoc应该是这种类型的数据检索的方法,但是,为了给你一个代码,你的代码就是这样的。
$conn = mysqli_connect($host,$user,$password);
mysqli_select_db($conn, $database);
$i = 0;
$sql1 = "SELECT fullname FROM addresses WHERE userid=1 LIMIT 1";
$result1 = mysqli_query($conn, $sql1);
while ($row = mysqli_fetch_row($result1)) {
$fullname = $row[0];
$i++; }
echo $fullname;
您使用索引名称
获取数据'全名'
像这样,
$ fullname = $ row [' fullname'];
但是如果在while循环之前显示$ row的值,则可以看到可用选项仅是实际编号的索引。
此外,在使用 mysqli_query 和 mysqli_fetch_row <时,您需要确保使用 mysqli_connect 和 mysqli_select_db /强>
答案 2 :(得分:-3)
您不需要while循环来设置数据库中的单个记录。下面我已更新您的单个记录的代码。
$query = "SELECT fullname FROM addresses WHERE userid = 1 LIMIT 1";
$result = mysqli_query($conn, $query);
$row = mysqli_fetch_assoc($result);
echo "Full Name:". $row['fullname'];