【发布时间】:2018-04-07 15:22:55
【问题描述】:
在我的页面上,我有文本框和下拉列表。 所有值都存储在数组中。 我想从数据库车辆中获取年份值。 下面是html代码。
<form name="frm_vehicles" action="processinput.php" method ="post">
Enter year of vehicle
<input type="text" name="year[]" >
<select name="choice[]">
<option value="cars" selected="selected">Cars</option>
<option value="lorry">Lorry</option>
</select>
<select name="query[]">
<option value="and" selected="selected">AND</option>
<option value="or">OR</option>
<option value="not">NOT</option>
</select>
<br>
<input type="text" name="year[]">
<br>
<select name="choice[]">
<option value="cars" selected="selected">Cars</option>
<option value="lorry">Lorry</option>
</select>
<div id="disp"></div>
<input type="button" name="addRow" onclick= "addRow()">
<input type="button" type="submit" name="search" value="Search">
</form>
单击按钮 addRow 时,将调用 javascript 函数并添加另一行。添加了以下元素。
<input type="text" name="year[]" >
<select name="choice[]">
<option value="cars" selected="selected">Cars</option>
<option value="lorry">Lorry</option>
</select>
因此,我们可以看到字段是动态添加的。
当所有字段都被选中后,输入被发送到 processinput.php 文件。 在这个文件中,写入了 SQL 语句。 应该发生的是应该根据用户的输入执行语句。 Cars 和 Lorry 是两张不同的桌子
and/or/not 用作连接。 如果选择“和”,则输入的上一年的值和之后的值应该匹配。 如果选择“或”,则只能匹配一个值。 如果选择'not',则不选择'not'之后的值。 所以需要做的是编写一个 SQL 语句来获取值并执行搜索。
例如 我添加了第三行。 我在第一个文本框中输入了 2006 并选择了表“汽车”和“和” 在第二行,我输入了年份选择表“货车”和“不” 在第三行中,我输入了表格“年份”和“汽车”
$year=$_POST['year'], $choice=$_POST['choice'], $query=$_POST['查询']
谁能指导我如何写一条sql语句。
如何在我的 sql 语句中提及 $year、$choice 和 $query? 我应该使用循环吗?
选择桌车或卡车。
汽车表;列品牌、型号、年份 丰田.nze.2006 nissan.march.2010
货车桌;列品牌、型号、年份 福特.hhh.2006 丰田.gggg.2010
【问题讨论】:
-
用prepared statements绑定它们。
标签: php postgresql