私はphpとmysqlで5ヶ月の実務経験があります。私の質問は、チェックボックスを使ってMySQLデータベーステーブルのいくつかの列を選択し、それらの選択された列のデータをPHPのhtmlテーブルに表示する方法です。 下記の私のコードを見て、これを解決するのを助けてください。チェックボックス付きのmysqlカラムを選択し、htmlテーブルのデータを表示する、
チェックボックスコード:
<form role="form" id="viewallteachers" method="POST" autocomplete="on" action="">
<h4>Kindly check the items to view in the table. You have a maximum of 10 items to view at a time in the table.</h4>
<hr>
<div class="row">
<div class="col-sm-4">
<div class="checkbox">
<label>
<input type="checkbox" name="check_list[]" value="tpicture">Picture
</label>
</div>
<div class="checkbox">
<label>
<input type="checkbox" name="check_list[]" value="teacherID">Teacher ID
</label>
</div>
<div class="checkbox">
<label>
<input type="checkbox" name="check_list[]" value="staffID">
Staff ID
</label>
</div>
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="submit" name="btnshowcolumns" class="btn btn-primary">Save changes</button>
</form>
は今、以下の表に、選択した列ごとに、選択した列のデータを表示するための私のコードです。以下は
<?php if(!empty($_POST['check_list'])) {
$check_list = $_POST['check_list'];
$counter = count($check_list);
for($x=0; $x<=$counter; $x++){
if(!empty($check_list[$x])){
$sql = "SELECT `".$check_list[$x]."` FROM teachers";
$db = new PDO('mysql:host=localhost:3306;dbname=gnoc_db', 'root', 'xxxx');
$select = $db->prepare($sql);
$select->execute();
while($row = $select->fetch(PDO::FETCH_ASSOC)) {
echo '<tr>';
foreach ($row as $key=>$value) {
echo '<td>'.$key . ' = ' . $value .'</td>';
}
echo '</tr>';
} /* END OF IF */
} /* END OF FOR LOOP */
}
}
?>
</tbody>
</table>
イメージされています image of checkbox selecting the database columns image of table show data
あなたのアプローチでは、「配列から文字列への変換」というエラーが表示されます。配列データをテーブルに表示するにはどうすればいいですか? –