PHP 只从数据库返回一个值

标签 php mysql arrays

我有以下代码:

$getrand = "SELECT DISTINCT Name from Events Order BY Rand() Limit 1";
$result = mysqli_query($con,$getrand);
$data = mysqli_fetch_array($result);
echo "<div class = 'container'>Name: $data[0]</br>";
$gettags = "SELECT Tag From Events where Name = '$data[0]'";
$tagresult = mysqli_query($con, $gettags);
$tagdata = mysqli_fetch_array($tagresult);
echo "$tagdata[0], $tagdata[1]";

但是它只从 tagdata 返回一个值。我的数据库如下所示:

ID |名称 |标签

一个名称可以有多个标签(即每个名称有多行标签)

最佳答案

您需要像这样循环访问您的记录集...

$getrand = "SELECT DISTINCT Name from Events Order BY Rand() Limit 1";
$result = mysqli_query($con,$getrand);
$data = mysqli_fetch_array($result);
echo "<div class = 'container'>Name: $data[0]</br>";
$gettags = "SELECT Tag From Events where Name = '$data[0]'";
$tagresult = mysqli_query($con, $gettags);

while($tagdata = mysqli_fetch_array($tagresult)) // a while loop has been used here
{
echo $tagdata['Tag'];// 'tag' your column name (change it as per your requirement)
}

关于PHP 只从数据库返回一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19881659/

相关文章:

php - 聪明的foreach循环

mysql - 是否可以确保相同的 ID 不会在 2 个表(数据库)中出现两次

c - fprintf 在将其发送到文件时给出意外的输出

java - 如何用 while 循环替换 for 循环方法

php - 使用get方法更新数据

php - 在没有表单的情况下将数据上传到 $_FILES

sql - 检索一组所有第 N 个 child

python - 列表转换 - 就地

php - 如何提取 dd-wrt ​​固件镜像进行开发?

mysql - pymysql游标执行SQL语言失败