Php $\u POST失败,与$\u请求相反
我正在尝试将表单$\u请求切换到$\u POST,因为这样更安全。 我的server.php中有以下代码:Php $\u POST失败,与$\u请求相反,php,ajax,post,request,Php,Ajax,Post,Request,我正在尝试将表单$\u请求切换到$\u POST,因为这样更安全。 我的server.php中有以下代码: if (isset($_REQUEST['mode']) && $_REQUEST['mode']=='verwijderturf'){ $sql="SELECT * FROM users WHERE Naam='".cleanInput($_REQUEST['naam'])."'"; $result=mysql_query($sql); $
if (isset($_REQUEST['mode']) && $_REQUEST['mode']=='verwijderturf'){
$sql="SELECT * FROM users WHERE Naam='".cleanInput($_REQUEST['naam'])."'";
$result=mysql_query($sql);
$count=mysql_num_rows($result);
if($count > 0){
$date2 = date("Y-m-d");
$naam2 = cleanInput($_REQUEST['naam']);
$door = cleanInput($_REQUEST['door']);
mysql_query("INSERT INTO turfjes
VALUES (
'Adtje',
'".$naam2."',
'',
'".$date2."',
'".$door."')")
or die (mysql_error());
}
}
这很好用。
但是,当我将所有$\u请求切换到$\u POST时,我的server.php不会做任何事情
我使用ajax请求将数据发送到服务器。
例如:
function verwijderturf() {
var naam = $("naam").value;
$("naamnieuw").value = "";
$("naam").value = "";
$("redennieuw").value = "";
new Ajax.Request('server.php?mode=verwijderturf&naam='+naam+'&door='+$("door2").value,{
method: 'post',
onSuccess: update,
onFailure: ajaxFailure
});
}
如您所见,我的ajax方法是“post”,因此它应该可以与$\u post配合使用
有人能帮我吗?
提前感谢。您需要提供参数作为POST参数,而不是GET参数。您正在使用哪个Javascript库 也就是说,对于jQuery来说
jQuery.ajax('server.php',{
data: {
'mode': 'verwijderturf',
'naam': naam,
'door': $("door2").value
},
type: 'post',
success: update,
error: ajaxFailure
});
原型示例:
new Ajax.Request('server.php',{
parameters: {
'mode': 'verwijderturf',
'naam': naam,
'door': $("door2").value
},
method: 'post',
onSuccess: update,
onFailure: ajaxFailure
});
数据
(jQuery)和参数
(Prototype)是一个键/值对象,表示所有POST参数。在这两个库中,这可能是一个序列化字符串,如'key=value&key2=value'
,但我更喜欢使用对象,让库序列化它们。您需要将参数作为POST参数提供,而不是GET。您正在使用哪个Javascript库
也就是说,对于jQuery来说
jQuery.ajax('server.php',{
data: {
'mode': 'verwijderturf',
'naam': naam,
'door': $("door2").value
},
type: 'post',
success: update,
error: ajaxFailure
});
原型示例:
new Ajax.Request('server.php',{
parameters: {
'mode': 'verwijderturf',
'naam': naam,
'door': $("door2").value
},
method: 'post',
onSuccess: update,
onFailure: ajaxFailure
});
数据
(jQuery)和参数
(Prototype)是一个键/值对象,表示所有POST参数。在这两个库中,这可能是一个序列化的字符串,比如'key=value&key2=value'
,但我更喜欢使用一个对象,让库序列化它们。我有同样的问题,除了使用POST方法的简单HTML表单,我没有使用任何库,所以它必须是linux/apache/php/mysql的标准安装(php是第5版)
可能POST和REQUEST使用了不同于PHP的库?可能不需要库,它与somo INI文件有关?谁知道,事实是,$\u POST数组不起作用。我也有同样的问题,除了使用POST方法的简单HTML表单,我没有使用任何库,所以它必须是linux/apache/PHP/mys的标准安装ql(php是版本5)
可能POST和REQUEST使用了不同于PHP的库?可能不需要库,它与somo INI文件有关?谁知道,事实是,$\u POST数组不起作用。非常感谢您的准确快速回复,我不知道。我可以在8分钟内接受答案,我会接受的。看起来他使用的是prototypeI am indeed使用prototype,但为什么不同?选项的名称和接受的数据类型取决于您的框架/库。prototype使用和jQuery
数据
。是的,我刚刚意识到。感谢您指出这一点。我已经改为jQuery,因为我在大多数文件中都使用它。再次感谢您指出这一点;)非常感谢您准确快速的回复,我不知道。我可以在8分钟内接受答案,我会的。看起来他在使用prototype我确实在使用prototype,但为什么会有不同?选项的名称和接受的数据类型取决于您的框架/库。原型使用和jQuery数据
。是的,我刚刚意识到这一点。谢谢你指出这一点。我已经改为jquery,因为我在大多数文件中都使用它。再次感谢您指出这一点;)