php,mysql-从mysql表中查询数据,并使用

php,mysql-从mysql表中查询数据,并使用,php,mysql,Php,Mysql,基本上,我首先从一个mysql表中查询特定的列,并希望在php中使用foreach()来回显它们。 这是我的密码 $sql = "SELECT id, name, roll_no, email, title, abstract, supervisor, sub_date FROM student_data"; $result = $conn->query($sql); $array = $result->fetch_assoc(); foreach ($array

基本上,我首先从一个mysql表中查询特定的列,并希望在php中使用foreach()来回显它们。 这是我的密码

$sql = "SELECT id, name, roll_no, email, title, abstract, supervisor, sub_date
        FROM student_data";

$result = $conn->query($sql);
$array = $result->fetch_assoc();

foreach ($array as $x => $value)
{
    echo $array["id"] . " " . $array["name"] . " " . $array["roll_no"] . " " . $array["title"] . " " . $array["supervisor"] . " " . $array["sub_date"] ."<br><br>";
}
$sql=“选择id、姓名、卷号、电子邮件、标题、摘要、主管、分包日期
来自学生_数据”;
$result=$conn->query($sql);
$array=$result->fetch_assoc();
foreach($x=>$value的数组)
{
echo$array[“id”]。$array[“name”]。$array[“roll_no”]。$array[“title”]。$array[“supervisor”]。$array[“sub_date”]。

; }

它只是不断重复第一个条目

您只在第一个结果集中的元素之间循环。您需要遍历整个结果集:

while($array= $result->fetch_assoc()) {
    echo $array["id"] . " " . $array["name"] . " " . $array["roll_no"] . " " . $array["title"] . " " . $array["supervisor"] . " " . $array["sub_date"] ."<br><br>";
}
while($array=$result->fetch_assoc()){
echo$array[“id”]。$array[“name”]。$array[“roll_no”]。$array[“title”]。$array[“supervisor”]。$array[“sub_date”]。

; }
您的主要错误理解是
$array=$result->fetch_assoc()仅返回一个结果。要获取第二个,您应该再次调用
$result->fetch_assoc()
。 所以你应该这样迭代

while ($array = $result->fetch_assoc()) {
echo $array["id"] . " " . $array["name"] . " " . $array["roll_no"] . " " . $array["title"] . " " . $array["supervisor"] . " " . $array["sub_date"] ."<br><br>";
}
while($array=$result->fetch_assoc()){
echo$array[“id”]。$array[“name”]。$array[“roll_no”]。$array[“title”]。$array[“supervisor”]。$array[“sub_date”]。

; }