gpt4 book ai didi

php - 如何显示第一个表中的记录并匹配第二个表中的记录?

转载 作者:行者123 更新时间:2023-11-29 15:50:36 25 4
gpt4 key购买 nike

我有两张表,一张用于学生详细信息,第二张用于 Stud_marks。

我正在学生表中插入个人信息,例如

  s_id  | name   | mobile     | email  
1 | asdff |1234567831 |asd@gmail.com
2 | kjhgg |1231231231 |mnhg@gmail.com
<!--many more-->

我正在插入学生分数,例如

m_id    |sub_name    |mark       | stu_id    |date_of_added
1 |asdasd |30 | 1 |2019-06-16 17:31:07
2 |oiuytr |40 | 1 |2019-06-16 17:31:07
3 |okjhyt |50 | 2 |2019-06-20 20:12:09
4 |ppoiuj |60 | 1 |2019-06-22 11:41:34
<!--many more-->

现在,我必须使用什么查询并显示单个记录。就像我必须显示学生 1 记录一样。所以我的预期输出是

 s_id  | name   | mobile     | email  
1 | asdff |1234567831 |asd@gmail.com


m_id |sub_name |mark | stu_id |date_of_added
1 |asdasd |30 | 1 |2019-06-16 17:31:07
2 |oiuytr |40 | 1 |2019-06-16 17:31:07
4 |ppoiuj |60 | 1 |2019-06-22 11:41:34

我在编辑页面,我必须显示类似的记录

name:-asdff
mobile:-1234567831
Email:-asd@gmail.com

<!--subject details-->
Sub_name Mark
asdasd 30
oiuytr 40
ppoiuj 60

我可以在 HTML 页面上显示记录。显示个人信息。我可以使用每个来显示主题详细信息。

我正在使用 CodeIgniter。

我尝试了以下查询,但收到了 3 条记录。

SELECT * FROM `student` LEFT JOIN stud_marks ON student.s_id=stud_marks.stu_id WHERE student.s_id=1

查询的输出是

1 asdff 1234567831 asd@gmail.com 1 asdasd 30 1 2019-06-16 17:31:07

1 asdff 1234567831 asd@gmail.com 2 asdasd 40 1 2019-06-16 17:31:07

1 asdff 1234567831 asd@gmail.com 4 asdasd 60 1 2019-06-22 11:41:34

你能帮我解决这个问题吗?

最佳答案

试试这个:

//assuming your database connection will be in $con
$sql="SELECT * FROM `student` LEFT JOIN stud_marks ON student.s_id=stud_marks.stu_id WHERE student.s_id=1";
$result=mysqli_query($con,$sql);
while($row = $result->fetch_assoc()){
$name=$row['name'];
$mobile=$row['mobile'];
$email=$row['email'];
$marks[]=$row['mark'];
$sub_names[]=$row['sub_name'];
}
$records=count($sub_names);
echo 'Name :'.$name; echo '<br>';
echo 'Mobile :'.$mobile; echo '<br>';
echo 'Email :'.$email; echo '<br>';
echo '------'; echo '<br>';
echo 'Subject Marks'; echo '<br>';
for ($x = 0; $x <= $records; $x++) {
echo "$sub_names[$x] $marks[$x] <br>";
}
echo '------'; echo '<br>';

提取数据的CodeIgniter示例:

$query = $this->db->query("YOUR QUERY");

foreach ($query->result_array() as $row)
{
$name=$row['name'];
$mobile=$row['mobile'];
$email=$row['email'];
$marks[]=$row['marks'];
$sub_names[]=$row['sub_names'];
}

为了显示结果,在我之前的示例中,从 $records=count($sub_names) 开始的代码没有任何变化。

关于php - 如何显示第一个表中的记录并匹配第二个表中的记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56779258/

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