数据库的表只含时间和坐标值两列,时间具体到每天(有很多天,日期还有重复,option value要使用变量),如何在在网页的下拉菜单中显示时间选项,并把选中的这个时间值传到下一个页面,根据这个时间值把坐标值画成折线图。求下拉菜单和传值代码或者方法。我是这么写的:
<form action="xianshi.php" method="post">
<fieldset><legend>选择您要查看的日期</legend>
<p><b>测量日期</b>
<select name="time">
<?php
while($colum=mysqli_fetch_array($result)){
?>
<option value="<?php echo $colum["time"];?>"><?php echo $colum["time"];?></option>;
<?php
}
?>
//处理表单的代码如下
$sql="select * from biao where time=$_POST['time']";
错误提示:Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) inD:\xampp\htdocs\xianshi.php on line 13
首先呢,我先说一下,你的sql语句报错是因为你要查询的time是一个字符串,要用引号,不然会报错
其次呢,你既然想在这边下拉表单选择一个值传递出去,那么最简单的方法用的就可以是js 你的代码中form没有提交表单按钮,那么就是使用js让它充当提交按钮 用到了 下拉选择框的onchange属性
具体写法呢:
<form action="xianshi.php" method="post" id="form"> <!--这里给表单一个id-->
<fieldset><legend>选择您要查看的日期</legend>
<p><b>测量日期</b>
<select name="time" onchange="fun()"> <!--这里的给一个onchange事件 也就是说当下拉框的值改变时将触发onchange里面的函数fun()-->
<?php
while($colum=mysqli_fetch_array($result)){
?>
<option value="<?php echo $colum["time"];?>"><?php echo $colum["time"];?></option>;
<?php
}
?>
<!--下面是js代码 对fun函数进行操作-->
<script type="text/javascript">
function fun(obj){
var form = document.getElementById("form");//选中你的表单
form.submit(); //执行提交
}
</script>