gpt4 book ai didi

PHP和sql显示项

转载 作者:行者123 更新时间:2023-11-30 01:37:44 25 4
gpt4 key购买 nike

我在显示 sql 数据时遇到一些问题。我将数据存储到两个表中:表学生和表公司。

表学生{ id、姓名、公司代码、fac_staff_id }

表公司{id、公司名称、公司状态}

我正在尝试创建一个如下所示的表格。

  • 状态A

    • A公司

      • 学生1
      • 学生2
    • B公司

      • 学生3
      • 学生 4
  • 状态B

    • C公司

      • 学生 5
    • D公司

      • 学生 6
      • 学生 7
      • 学生 8

我尝试创建一个与上述结构类似的表,但只想根据公司状态对所有学生进行分类。输出仅显示一种状态并将所有学生置于该状态。

          $querysel = "SELECT DISTINCT c.company_state,s.fac_staff_id FROM tblcompany 
c, tblstudent s WHERE c.id = s.company_code " ;
$resultsel = mysql_query($querysel, $connection);
$querystdsel = "SELECT s.name,c.company_state FROM tblcompany c,
tblstudent s WHERE c.id = s.company_code " ;
$resultstdsel = mysql_query($querystdsel, $connection);

while($rowsel =mysql_fetch_array($resultsel)){

if ($rowsel['fac_staff_id'] == NULL){

echo $rowsel['company_state'];

while($rowstdsel =mysql_fetch_array($resultstdsel)){

if($rowstdsel['company_state']=$rowsel['company_state']){

echo $rowstdsel['name'];

}

}

}
}

希望有人能告诉我创建上面这样的表的方法或任何替代方法,因为我对 php 和 mysql 仍然很差。谢谢

最佳答案

您应该加入语句以仅得到一个结果,其中每一行都类似于“order by company_state, company_name”

state | company | student
A | A | student1
A | A | student2
A | B | student3
....

在你的 php 中,你可以使用列表来获取你的结构。像这样的东西:只是写下来,没有漂亮、干净、功能性的代码!

<?php

$rows = mysqli_fetch_array($result);

echo "<ul>";

$lastcompany = "";
$laststate = "";

foreach($rows as $row)
{
if(($laststate == "") or ($laststate != $row['state']))
{
// New Item on mainlist: states

if($laststate != $row['state'])
{ // close previous lists (students, companies)
echo "</ul></ul></li>";
}

echo "<li>".$row['state'];
}


if(($lastcompany == "") or ($lastcompany != $row['company']))
{
// New Item on mainlist: companies

if($lastcompany != $row['company'])
{ // close previous (students) list
echo "</ul></li>";
}

echo "<li>".$row['company'];
}

// New student entry
echo "<li>".$row['company']."</li>";


// Redmine company and state for next iteration
$lastcompany = $row['company'];
$laststate = $row['state'];
}


// After all close all lists
echo "</ul></ul></ul>";

?>

关于PHP和sql显示项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16622237/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com