PHPコードを使用して、列名でmysqlクエリテーブルを注文したい(魔女は「動的に」取得されます-列名は固定されていません)。スクリプトは、クエリから各列の正しい列名のみを取得します。
...など...データベースに接続..
$query = "SELECT a.name,a.surname,b.email,c.phone
FROM users as a
inner join users_email as b
inner join users_phone as c
WHERE a.id=b.id AND a.id=c.id ";
if (isset($_GET['orderby'])&&
(($_GET['orderby']=='name') || ($_GET['orderby']=='surname')||($_GET['orderby']=='email')))
{
$query .= "ORDER BY" . $_GET['orderby'] . "ASC;";
}
$result = mysql_query($query,$con);
echo "<table><table border=1><tr>";
for($i=0; $i < mysql_num_fields($result); $i++){
$field_info = mysql_fetch_field($result, $i);
echo '<th><a href="login3.php?orderby='. $field_info -> name .'" >'. $field_info -> name .'</a></th>';
}
while ($row=mysql_fetch_assoc($result)){
echo "<tr>";
foreach($row as $_column){
echo "<td>{$_column}</td>";
}
echo "</tr>";
}
echo "</table>";
mysql_close($con);
?>