表格的选定行和PHP

时间:2016-06-03 13:42:47

标签: php mysql twitter-bootstrap

我已将从我的数据库中完成的所有付款插入到表格中,以及我要向访问者显示的所有信息。但是,我想添加此功能,当访问者选择每一行时,他们可以访问他们当天购买的所有产品。换句话说,我想要一个模态弹出并显示该购买的发票(意味着所有产品在同一天购买)。但是,如何选择哪个日期?

<?php 
    $myQuery = mysql_query("SELECT * FROM `payment` WHERE UserID = $uid;");
?> 
<table class="table table-striped"> 
    <thead>
        <tr>
            <th>ID</th>
            <th>Product Name</th>
            <th>Brand</th>
            <th>Price</th>
            <th>Quantity</th>
            <th>Date</th>
        </tr>
    </thead>
    <tbody>
        <?php
            while ($row = mysql_fetch_assoc($myQuery)){
        ?>
            <tr data-toggle="modal" data-id="1" data-target="#orderModal">
                <td><?php echo $row["ProductID"] ?></td>
                <td><?php echo $row["ProductName"] ?></td>
                <td><?php echo $row["Brand"] ?></td>
                <td><?php echo $row["Price"] ?></td>
                <td><?php echo $row["Quantity"] ?></td>
                <td><?php echo $row["Date"] ?></td>
            </tr>
        <?php
            }
        ?>
    </tbody>
</table> 

4 个答案:

答案 0 :(得分:1)

有几种方法可以解决这个问题。首先,您可以使用PHP来选择日期:

$date = date('Y-m-d');
$myQuery = mysql_query("SELECT * FROM `payment` WHERE UserID = $uid AND Date = '$date';");

或者您可以使用MySQL的CURDATE()方法:

$myQuery = mysql_query("SELECT * FROM `payment` WHERE UserID = $uid AND Date = CURDATE();");

如果您的日期格式为Y-m-d(2016-06-03)格式,则此方法有效。如果它是另一种格式,你将不得不做一些DATE_FORMAT操作。这只适用于“今天”。否则,请使用第一种方法并传入所需的日期。

另外,不推荐使用mysql_ *函数,并且从PHP7开始删除它们。我真的建议使用PDO或mysqli,并使用它来绑定您的参数,这样您就不必担心mysql注入。

答案 1 :(得分:1)

使用Jquery DATEPICKER在目标文件中选择日期并提交表单,其中写入查询

在此页面上获取日期:

$date = date('Y-m-d');
if(iseet($_POST['date']))
{
    $date = date("Y-m-d", strtotime($_POST['date']));
}
$myQuery = mysql_query("SELECT * FROM `payment` WHERE UserID = $uid AND Date = '$date' ");

以下是datepicker的代码

&#13;
&#13;
  $(function() {
    $( "#datepicker" ).datepicker();
  });
&#13;
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
<link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
<form action="yourfile.php" method ="post">
<p>Date: <input type="text" name="date" id="datepicker"></p>
<input type="submit" value="Submit">
</form>
 
&#13;
&#13;
&#13;

答案 2 :(得分:0)

使用日期选择器选择日期,然后使用所选日期对您的php函数进行ajax调用,然后触发SELECT * FROM付款WHERE UserID = $uid and Date = $date;之类的查询,并弹出一个返回的模型来自ajax调用的数据。

答案 3 :(得分:0)

mysql_query("SELECT * FROM `payment` WHERE UserID = $uid AND Date  between '$date1' and '$date2'");

$ date1是购买日期,小时,分钟和秒设置为0

$ date2是购买日期,小时数设置为23,分钟数为59,秒数为59

如果$ date是2015-05-05 16:34:22,$ date1是2015-05-05 00:00:00而$ date2是2015-05-05 23:59:59,当天:)