如何使用datepicker的值在db中选择数据?

时间:2013-12-14 14:30:18

标签: php jquery mysql html5 datepicker

我正在制作一个注册损坏手机的页面。我做了一个搜索查询来搜索数据库中与datepicker的日期匹配的数据。这是我的源代码。 (仅与此问题相关,)

<?php
 $con = mysql_connect("localhost", "root", "");
if ($con) {
$db = mysql_select_db('mobile', $con);
 } else {
die('Could not connect: ' . mysql_error());
}

 if (array_key_exists('myday', $_POST)) {
$mydate = $_POST['mydate'];
$myday = "SELECT * FROM mobile_rep WHERE sdate='{$mydate}' ";
}

 mysql_close($con)
  ?>

<html>
<head> </head>
<body>
<form action="index.php" method="POST" class="form-inline">
  <div class="span12" style="border-radius: 5px; border-style: solid; border-width: 1px; margin-left: 20px;" >
    <h5 style="margin-left: 10px; "> <b> Current User List </b></h5>
    Select By Date
    <input type="date" name="mydate" id="mydate" class="input-medium" />
    &nbsp;
    <input type="submit" class="btn-primary  " name="myday" value="Search by date" id='myday' />
    <br/> <br/>
    <table border="1" width="300" cellspacing="1" cellpadding="1" class="table table-striped" style=" border-radius: 5px; border-style: solid; border-width: 1px; ">
      <thead>
      <tr>

        <th>sdate</th>
        <th>model_no</th>
        <th>fault</th>
        <th>rp_fee</th>
        <th>sp_fee</th>
        <th>total</th>
      </tr>
      </thead>
      <tbody>
      <?php
      while ($row1 = mysql_fetch_array($myday)) {
        echo "<tr>";
        echo "<td>" . $row1['sdate'] . "</td>";

        echo "<td>" . $row1['model_no'] . "</td>";
        echo "<td>" . $row1['fault'] . "</td>";
        echo "<td>" . $row1['rp_fee'] . "</td>";
        echo "<td>" . $row1['sp_fee'] . "</td>";
        echo "<td>" . $row1['total'] . "</td>";
        echo "</tr>";
      }
      ?>
      </tbody>
    </table>
  </div>
</form>
</body>
</html>

我和我有 未定义的变量:第227行的C:\ wamp \ www \ mobile \ index.php中的myday
 警告:mysql_fetch_array()要求参数1为资源,在第227行的C:\ wamp \ www \ mobile \ index.php中给出null
第227行表示 while($ row1 = mysql_fetch_array($ myday)){

我也上传了我的页面图像。 enter image description here
请帮帮我。

1 个答案:

答案 0 :(得分:0)

第一次输入页面时,未设置$ myday变量。如果您发送POST代码,则执行if (array_key_exists('myday', $_POST)) { }并创建$ myday。

如果你的变量存在,只需在while循环之前检查,否则它将null值传递给mysql_fetch_data函数

if(isset($myday)) { while ($row1 = mysql_fetch_array($myday)) ... }