【发布时间】:2012-12-25 08:46:50
【问题描述】:
在我的网站上,我在 php 中有组合框:
<script type="text/javascript">
function showUserVisits(reservationObjectId)
{
//alert(reservationObjectId);
if (reservationObjectId == "")
{
document.getElementById("txtHint").innerHTML="";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","get_user.php?q=" +reservationObjectId,true);
xmlhttp.send();
}
</script>
<form>
<select name="users" onchange="showUserVisits(this.value)">
<!-- <option value="">Select a person:</option> -->
<option value="1">aaa1</option>
<option value="2">aaa2</option>
<option value="3">aaa3</option>
<option value="4">aaa4</option>
</select>
</form>
当用户更改组合框中的项目时,方法 showUserVisits 由 ajax 调用。而且我必须将 reservationObjectId 传递给 get_user.php 站点。它是如何完成的 GET 方法,我想通过 POST 方法传递这个参数,因为在 GET 方法中有人可以更改 id。我该怎么做?
谢谢
【问题讨论】:
-
别被骗了,post 项目也可以编辑,就像获取项目一样简单。只要确保您始终检查您的数据。
-
@John 你的意思是如果请求通过
post方法发送,参数将显示在 url 中? -
@DaHaKa:不在 URL 中,但可以使用浏览器扩展轻松修改 POST 参数
-
@xbonez 比如firebug或者有其他扩展?
-
是的,我认为萤火虫可以做到这一点。您可以劫持任何传出的 AJAX 请求,对其进行更改然后发送。