我正在制作一个注册损坏手机的页面。我做了一个搜索查询来搜索数据库中与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" />
<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)){
我也上传了我的页面图像。
请帮帮我。
答案 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)) ... }