我想通过PHP将从下拉菜单中选择的区域名称传递到MySQL的查询中。我在JavaScript中检索了名称,但无法将值从JavaScript存储到PHP。我的代码如下
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
<script>
function getIndex()
{
var x=document.getElementById("cmbArea").selectedIndex;
var y=document.getElementById("cmbArea").options
var z= y[x].text;
alert(z);
}
</script>
</head>
<body>
<form name ="form1" action="Demo1.php" method="post">
<select id="cmbArea" name="cmbArea">
<?php
include 'Connect.php';
$query = "SELECT varAreaName FROM tbArea" ;
$result = mysql_query($query);
while($row = mysql_fetch_assoc( $result )) {
echo '<option value="'.$row['varAreaName'].'">' . $row['varAreaName'] . '</option>';
}
?>
</select>
</form>
<input type="Button" onclick="getIndex()" value="Alert index of selected option">
</body>
</html>
您需要发布您的表单。该值将在$_POST['cmbArea']
中可用。
如果我理解正确,我会在这种情况下使用AJAX。类似于以下内容:http://openenergymonitor.org/emon/node/107
是的,您不能将值从javascript"存储"到PHP,因为javascript在客户端(实际上在浏览器端),而不是在服务器端。
您需要使用ajax发布数据(Jquery-ajax可能是),并以JSON格式发布数据。检查此线程。。
PHP将在服务器上运行,然后javascript将在浏览器上运行。因此,当你尝试时,你不能在同一页上同时做这两件事。
我认为最好的方法是提交表单,并使用PHP读取其中的值。在那里您可以执行查询。
如果你不想提交,你可以检查AJAX,它会发送一个异步服务器端请求,而不刷新网页。