默认情况下订单表

时间:2015-03-11 09:14:29

标签: php mysqli html-table

我目前正在制作一个活动日历,允许用户在日期和日期之间进行排序。地点和日期&的地方。

这是我用于订单的代码:

$order = isset($_GET['sort'])?$_GET['sort']:'date_added';
$result = mysqli_query($con,"SELECT * FROM calendar ORDER BY $order");
$sql = mysql_query($query);

现在,当您点击一个按钮时,它会设置将用于排序的变量,如此

onclick="location.href=' index.php?sort=date&place'"

现在这很有效,但是当我开始我的活动日历时,它是空白的...我怎样才能为我的日历提供默认订单?

以下是日历输出的代码:

echo "<table class='table table-striped' >
<thead>
<tr>
<th>Artist</th>
<th>Place</th>
<th>Date</th>
<th>Genre</th>
</tr>
</thead>";


while($row = mysqli_fetch_array($result))
{
    $date = $row['date'];
 $convdate = date('d-m-Y', strtotime($row['date']));

echo "<tr>";
echo "<td>" . $row['artist'] . "</td>";
echo "<td>" . $row['place'] . "</td>";
echo "<td>" . $convdate . "</td>";
echo "<td>" . $row['genre'] . "</td>";
echo "</tr>";

}
echo "</table>";

mysqli_close($con);



?>

3 个答案:

答案 0 :(得分:1)

这样的正确设置顺序。但是有一些mysql_query没有意义。放弃它。 出于安全原因(SQL注入),在使用查询之前,我会使用它来转义字符串。

$order = isset($_GET['sort']) ? $_GET['sort'] : 'date_added';
$order = mysqli_real_escape_string($con, $order);
$result = mysqli_query($con,"SELECT * FROM calendar ORDER BY $order");

答案 1 :(得分:1)

字段的名称是“日期和地点”吗?

请注意URL中的&符号应该被转义,因为如果不是$ _GET将把“place”作为另一个不同的参数。

答案 2 :(得分:0)

  

如何为我的日历提供默认订单?

“默认订单”是什么意思?

  

$ order = isset($ _ GET ['sort'])?$ _ GET ['sort']:'date_added'; $ result =   mysqli_query($ con,“SELECT * FROM calendar ORDER BY $ order”); $ sql =   的mysql_query($查询);

永远不要将未经测试的值传递给sql语句。

  

onclick =“location.href ='index.php?sort = date&amp; place'”

这不会导致$ _GET ['sort'] =='date&amp; place',&amp;在url中标记一个新变量。