私は2つのテーブル:Course_tableとMajor_tableを持っていて、どちらも関係エンティティを持っています。私はドロップダウンリストを作成し、それをMajor_tableにリンクし、HTMLテーブルをCourse_tableにリンクしました。私がしたいのは、ドロップダウンリストからの選択に基づいてCourse_tableにデータを表示することですが、何かを選択して 'Filter'を押すと、空のテーブルが表示されます。ここでphpテーブルmysqlドロップダウン選択からデータを表示
は私の最初のコードです:
<form method="post" action="staff-page.php">
<label for="majorFilter">Select Major: <select id="majorFilter" name="majorFilter">
<option value="0">Select a major</option>
<?php
include ('partials/connectDb.php');
$sql = "SELECT * FROM major_table;";
$run_query = mysqli_query($conn, $sql);
while ($row = mysqli_fetch_array($run_query)) {
$m_id = $row['major_id'];
$m_name = $row['major_name'];
echo "<option value='{$m_id}'>{$m_name}</option>";
}
?>
</select></label>
<Button type="button" name="filter" id="filter">Filter</Button>
</form>
そして、これは私の第二のコードです:あなたの助けがはるかに高く評価されて
<table style="height: 400px; width: 600px; overflow: auto; display: none;" id="courseTable">
<caption>Course Table</caption>
<thead>
<tr>
<th>Name</th>
<th>Code</th>
<th style="padding-right: 10px;">Cr</th>
<th>Major</th>
<th>Students Enrolled</th>
</tr>
</thead>
<?php
error_reporting(0);
$conn = mysqli_connect('localhost', 'root', '', 'srs-db') or die('ERROR: Cannot Connect='.mysql_error($conn));
$query = "SELECT course_table.course_name, course_table.course_code, course_table.cr, major_table.major_name, course_table.students_enrolled FROM course_table
INNER JOIN major_table ON course_table.major = major_table.major_id
WHERE course_table.major = '$m_id';";
$sql = mysqli_query($conn, $query);
while ($course = mysqli_fetch_array($sql)) {
# code...
echo "<tr>";
echo "<td>.$course[course_name].</td>";
echo "<td>.$course[course_code].</td>";
echo "<td>.$course[cr].</td>";
echo "<td>.$course[major_name].</td>";
echo "<td>.$course[students_enrolled].</td>";
echo "</tr>";
}
?>
</table>
:)
[フィルタ]ボタンを押したときにサーバーにリクエストがありますか? –
あなたのイベントはどこですか?それは2番目のコードを呼び出す – dev
@ TudorConstantinいいえ、ページが私が推測するようにリロードしない理由です。だから私はボタンタイプ= 'ボタン'を使用しています – user3586095