繁体   English   中英

显示PHP多对多关系

[英]Displaying PHP Many to Many Relationship

大家好我是新的PHP所以这里是我的代码我很难显示PHP在很多很多关系我做一个学生信息系统

这是我的数据库

学生
学生卡
名称
地址
课程

学科
subject_id
SUBJECT_NAME
subject_code

student_subject
subject_id
学生卡

这是我的查询

$sql = "SELECT subject_name
        FROM   subject
             LEFT JOIN student_subject ON (student.student_id = 'student_id')
                    LEFT JOIN subject ON (subject.subject_id = 'subject_id' )";

$records = mysql_query($sql);

现在这是我的代码显示它请帮我如何显示这个例子我只想显示主题名称和主题代码

while($student=mysql_fetch_array($records)){

      echo $student['subject_name'];
      echo $student['subject_code'];
}

这只是样本,因为这只是我想要显示的请帮助我,谢谢对不起我的英语不好。 无法搜索任何关于在谷歌显示多对多关系的东西我可以看到一些查询,但我无法搜索我试过很多的代码,但我总是失败,非常感谢你

期望输出:

主题名称--- | ---主题代码
ICT ___________ || _________ IT 101
代数_______ || _________ MATH101

删除视觉中的下划线无法在stackoverflow中修复新输出

<?php

$con = mysql_connect("localhost", "root", "") or die('There is an error to connect DB' . mysql_error());

mysql_select_db('test') or die ('Unable to select DB' . mysql_error());

$query = 'SELECT ST.student_id, ST.name, ST.address, SB.subject_name, SB.subject_code FROM student ST, subject SB, `student_subject` STSB WHERE STSB.student_id=ST.student_id AND STSB.subject_id=SB.subject_id';

$query = mysql_query($query) or die('Unable to execute query' . mysql_error());

if ($query) {
    $str = '';
    $header = '<tr><td>Student ID</td><td>Name</td><td>Address</td><td>Subject</td><td>Subject Code</td></tr>';
    while ($row = mysql_fetch_array($query)) {
        $str .= '<tr>';
        $student_id = $row['student_id'];
        $name = $row['name'];
        $address = $row['address'];
        $subject = $row['subject_name'];
        $subject_code = $row['subject_code'];

        $str .= '<td>' . $student_id . '</td>';
        $str .= '<td>' . $name . '</td>';
        $str .= '<td>' . $address . '</td>';
        $str .= '<td>' . $subject . '</td>';
        $str .= '<td>' . $subject_code . '</td>';
        $str .= '</tr>';
    }
    if ($str) {
        $table = '<table border="1">' . $header      . $str . '</table>';
    } else {
        $tdata = '<tr><td colspan="5">No data found</td></tr>';
        $table = '<table border="1">' . $header . $tdata . '</table>';
    }
    echo $table;
}

输出将是这样的:

在此输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM