2016-03-31 8 views
-1

PHPを使用して1人の人から複数のレコードをテーブルに表示したいが、他のレコードはテーブルの外にあり、レコードは1つだけテーブルの内側にある。これは(view me)のように見えます。ここでPHPで複数のレコードを表示

は私のコード

$resultSet2 = $mysqli->query("SELECT class_subject, target_grade, current_grade , cl.classID FROM students AS stud INNER JOIN grade AS gr ON stud.studentID = gr.studentID INNER JOIN class cl ON gr.classID = cl.classID WHERE (cl.classID = '1' OR '2') and surname = '$search' "); 

と私は最初のもののように、テーブル内にそれらを置くことができますどのように

while($row = $resultSet2->fetch_array()) { 
    echo "<tr>"; 
    echo "<td>" . $row['class_subject'] . "</td>"; 
    echo "<td>" . $row['target_grade'] . "</td>"; 
    echo "<td>" . $row['current_grade'] . "</td>"; 
    echo "</tr>"; 
    echo "</table>"; 

のですか?

+0

** WARNING **:http://php.net/manual/en/mysqli-stmt.bind-param([ 'bind_param']あなたはパラメータ化クエリを使用する必要がありますmysqli''使用します。 php)を使用してユーザーデータをクエリに追加します。 **重大な[SQLインジェクションのバグ](http://bobby-tables.com/)を作成するため、これを達成するために文字列補間または連結を使用しないでください。 **決して '$ _POST'データを直接クエリに入れないでください。 – tadman

答えて

3

whileループの外側に閉じるテーブルタグを移動します。</table>もwhileループを閉じます。

echo "<table>"; 
while($row = $resultSet2->fetch_array()) { 
    echo "<tr>"; 
    echo "<td>" . $row['class_subject'] . "</td>"; 
    echo "<td>" . $row['target_grade'] . "</td>"; 
    echo "<td>" . $row['current_grade'] . "</td>"; 
    echo "</tr>"; 
} 
echo "</table>"; 
関連する問題