当我提交下面的表单时,它会第一次搜索,但如果我尝试其他搜索,它会给我相同的答案,例如: 首先,我搜索“operat”--->它返回例如“操作后缀” 然后,如果我搜索“航班”--->它再次返回“操作后缀” 您将在下面找到代码,提前谢谢!
<form name="form1" id="form1" class="form-inline" method="GET" action="index.php">
<select name="select">
<option value="" selected="selected"></option>
<option value="Data Element Name">Data Element Name</option>
<option value="Term">Term</option>
<option value="Diagram">Diagram</option>
</select>
<input type="text" name="search" id="search">
<input type="submit" class="btn">
</form>
<table id="resultTable"></table>
<?php
function connection(){
/*****************************************************************************/
//Get values from the form
$search = $_GET['search'];
$select = $_GET['select'];
/*****************************************************************************/
//Define needed values to log in
$dbhost='localhost';
$dbusername='username';
$dbuserpass='pass';
$dbname = 'db_name';
/*****************************************************************************/
// connect to the mysql database server
$connection=mysql_connect ($dbhost, $dbusername, $dbuserpass);
/*****************************************************************************/
//select the database
mysql_select_db($dbname) or die('Cannot select database');
/*****************************************************************************/
//Create the Query
$result="SELECT name from tbl_name WHERE stereotype LIKE 'Term' AND name LIKE '%$search%' ";
/*****************************************************************************/
//Sending the request
$req =mysql_query($result,$connection);
if (!$req )
{
die(mysql_error());
}
/*****************************************************************************/
//Loop to stock results on an array
$array=array();
$i=0;
while($data = mysql_fetch_assoc($req))
{
$array[$i]=$data['name'];
$i=$i+1;
}
/*****************************************************************************/
//return the result to javascript
return json_encode($array);
/*****************************************************************************/
}
?>
<script>
$('#form1').submit(function() {
$('#resultTable').empty();
alert(document.forms["form1"]["search"].value);
if (document.forms["form1"]["select"].value=="Term" ){
var tab=<?php echo connection();?>;
for(i=0;i<tab.length;i++) {$('#resultTable').append('<tr><td>'+tab[i]+'</td></tr>');}
}
return false;
});
</script>
答案 0 :(得分:1)
这是因为html和php的顺序错误。正常流量:
在您的情况下,在呈现表单后插入内容
如果不是您的情况,请尝试检查您是使用javascript还是离线存储。