データベースからのデータを含むテーブルを(Webページ内に)表示したいが、ユーザが選択したフィールドを持つテーブルだけを表示したい。例:テーブルに合計6つのフィールド(名前、電子メール、年齢、場所、性別、職業)があります。私のページのユーザーが名前、電子メール、年齢を選択したとします。すべての行エントリを含むが、指定されたフィールドのみを含むテーブルを表示したい。mySqlテーブルの指定されたフィールドのみからデータを取得する方法はありますか?
これは私がこれまでに書いたものですが、動作していないようです。
include("init.php");
$fields = $_POST["fields"];
$sorting = trim($_POST["sorting"]);
$filter = trim($_POST["filter"]);
$sql_query = sprintf("select * from applicants where %s order by %s", $filter, $sorting);
$query = mysql_query($sql_query);
$num_rows = mysql_numrows($query);
echo "<table border='1'>";
echo "<tr>";
foreach($fields as $field) {
$field = ucfirst($field);
echo "<th>$field</th>";
}
echo "</tr>";
for($i = 0; $i < $num_rows; $i++) {
echo "<tr>";
while($field = mysql_fetch_field($query)) {
if(in_array($field->name, $fields)) {
$data = mysql_result($query, $i, $col);
echo "<td>$data</td>";
} else {
echo "<td>false</td>";
}
}
echo "</tr>";
}
echo "</table>";
PHPコア関数にmysql_numrows関数が存在しないとエラーがあると思っていました。 –