我的脚本代码用于数据库中的ajax函数。 代码如下所示。
<script>
function showUser(str)
{
.....
}
var selectedLang2 = document.getElementById('lang2').value;
var selectedSubject1 = document.getElementById('subject1').value;
xmlhttp.open("GET","db_"+selectedLang2+".php?q="+str,true);
xmlhttp.send();
}
</script>
根据上面的脚本代码,脚本代码只调用选择选项值的php文件。所以我的选择选项代码与下面相同
<form>
<select name="lang2" id="lang2">
<option value="co">한국어</option>
<option value="en">English</option>
<option value="af">Afrikaans</option>
<option value="ar">Arabic</option>
.......
</select>
<select name="subject1" id="subject1">
<option value="a">Infection : bacteria and virus </option>
<option value="b">Infection : virus, fungus and etc</option>
<option value="c">Malignant neoplasm</option>
----
</select>
所以我想使用php变量代码(这里是$lang1
,$subject1
),如下面的代码所示。
<?php
$q = htmlspecialchars($_GET['q']);
$lang2 = $REQUEST_['lang2'];
$subject1 = $REQUEST_['subject1'];
$con = mysqli_connect('localhost','root','autoset','my_db');
if (!$con)
......
我如何编写脚本代码。
/*Here is target point.
var selectedLang2 = document.getElementById('lang2').value;
var selectedSubject1 = document.getElementById('subject1').value;
xmlhttp.open("GET","db_"+selectedLang2+".php?q="+str,true);
xmlhttp.send(); */
请给我一点建议。 谢谢
答案 0 :(得分:0)
如果不指定url参数,则无法通过GET发送任何信息。但是您可以在请求URL中添加额外的参数来实现此目的。
改变你的JS:
var selectedLang2 = document.getElementById('lang2').value;
var selectedSubject1 = document.getElementById('subject1').value;
xmlhttp.open("GET","db_" + selectedLang2 + ".php?q=" + str + "&lang2=" + selectedLang2 + "&subject1=" + selectedSubject1,true);
xmlhttp.send();
更改您的PHP:
$q = htmlspecialchars($_GET['q']);
$lang2 = htmlspecialchars($_GET['lang2']);
$subject1 = htmlspecialchars($_GET['subject1']);