做了个PHP查询数据库的页面,现在可输入版本号和选择线路查询,选择状态无法使用,页面如下,
目前遇到的问题是,首次打开页面是,自动显示所有数据,并提示了两处错误,需要如何修改,即打开页面是空的,只有点击查询后才显示,第二个问题是如何让“选择状态”生效,选择完成执行SQL1,选择未完成执行SQL2,媒体版本号和线路为必选项,
那位帮改改。
选择状态的代码我是这样写的,可是执行不了,提示语法错误
if %{$_REQUEST['zhuangtai']}%="完成" then
$q = "SELECT * FROM research where banben like '%{$_REQUEST['banben']}%' AND linename like '%{$_REQUEST['xianlu']}%' AND zhuangtai='fin' order by busname asc";
elseif %{$_REQUEST['zhuangtai']}%="未完成" then
$q = "SELECT * FROM research where banben like '%{$_REQUEST['banben']}%' AND linename like '%{$_REQUEST['xianlu']}%' AND zhuangtai='new' order by busname asc";
完整代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>数据查询</title>
</head>
<body>
<p> </p>
<form>
<div align="center">媒体版本号:
<input name="banben" type="text" size="10" maxlength="5">
选择线路
<select name="xianlu">
<option>0213</option>
<option>0203</option>
<option>0225</option>
<option>0214</option>
<option>0207</option>
</select>
选择状态
<select name="zhuangtai">
<option selected="selected">完成</option>
<option>未完成</option>
</select>
<label></label>
<input type="submit" name="submit" value="查询" />
</div>
</form>
<?php
$link=mysql_connect("localhost","root","12345678");
if(!$link) echo "没有连接成功!";
else echo "连接成功!";
mysql_select_db("busap", $link); //选择数据库
//控制查询条件
//if %{$_REQUEST['zhuangtai']}%="完成" then
$q = "SELECT * FROM research where banben like '%{$_REQUEST['banben']}%' AND linename like '%{$_REQUEST['xianlu']}%' AND zhuangtai='fin' order by busname asc";
//elseif %{$_REQUEST['zhuangtai']}%="未完成" then
//$q = "SELECT * FROM research where banben like '%{$_REQUEST['banben']}%' AND linename like '%{$_REQUEST['xianlu']}%' AND zhuangtai='new' order by busname asc";
// mysql_query("SET NAMES GB2312"); //防止乱码
$rs = mysql_query($q); //获取数据集
$assoc= mysql_num_rows($rs);///影响的行数 , 原来用了mysql_fetch_assoc
echo "$assoc";
$row=mysql_fetch_array($rs); //只需要补充回这一行.
if(!$rs){die("Valid result!");}
?>
<table width="100%" border="1" align="center">
<tr>
<td width="10%"><div align="center">线路</div></td>
<td width="10%"><div align="center">中心编号</div></td>
<td width="10%"><div align="center">线路</div></td>
<td width="10%"><div align="center">车辆自编号</div></td>
<td width="10%"><div align="center">传输方式</div></td>
<td width="10%"><div align="center">媒体版本</div></td>
<td width="10%"><div align="center">日期</div></td>
<td width="10%"><div align="center">时间</div></td>
<td width="10%"><div align="center">状态</div></td>
</tr>
<?php
do { ?>
<tr>
<td width="10%"><div align="center"><?php echo $row[0]; ?></div></td>
<td width="10%"><div align="center"><?php echo $row[1]; ?></div></td>
<td width="10%"><div align="center"><?php echo $row[2]; ?></div></td>
<td width="10%"><div align="center"><?php echo $row[3]; ?></div></td>
<td width="10%"><div align="center"><?php echo $row[4]; ?></div></td>
<td width="10%"><div align="center"><?php echo $row[5]; ?></div></td>
<td width="10%"><div align="center"><?php echo $row[6]; ?></div></td>
<td width="10%"><div align="center"><?php echo $row[7]; ?></div></td>
<td width="10%"><div align="center"><?php echo $row[8]; ?></div></td>
</tr>
<?php }while($row = mysql_fetch_array($rs)); ?>
</table>
</html>