Php .Post在jquery中

Php .Post在jquery中,php,jquery,Php,Jquery,我在jquery中使用下面的代码,但是我的页面本身正在重新加载,我不知道我在哪里犯了错误 var newstr = $.trim($('#umail').val()); newstr保存电子邮件地址 $.post("coding/unsub.php",{email:newstr},function(result){ $("#d_result").html(result); }); 我有 <span id="d_result"></span> 显示结果 我的php

我在jquery中使用下面的代码,但是我的页面本身正在重新加载,我不知道我在哪里犯了错误

var newstr = $.trim($('#umail').val());
newstr保存电子邮件地址

$.post("coding/unsub.php",{email:newstr},function(result){
$("#d_result").html(result);
});
我有

<span id="d_result"></span>

显示结果

我的php代码是

<?php
include ("../includes/dbcon_.php");
$unsub_sql = mysql_query("Delete FROM TblNewsLetter WHERE Email = '$_GET[email]'");
if (!$unsub_sql)
{
    $ds_result = "<p style='font-size:200%;color:red;'>Some Error Occurred! Try Later.</p>";
}
else
{
    $ds_result = "<p style='font-size:200%;color:green;'>Successfully Unsubscribed</p>";
}
mysql_close($con);
echo $ds_result;
?>
sql查询中的

$mail = $_GET['email'];
$query = "DELETE FROM TblNewsLetter WHERE Email = $mail";
在sql查询中,
$\u GET
应更改为
$\u POST

$mail = $_GET['email'];
$query = "DELETE FROM TblNewsLetter WHERE Email = $mail";
$\u GET
应更改为
$\u POST

这样使用

$unsub_sql = mysql_query("Delete FROM TblNewsLetter WHERE Email = '".$_POST['email']."'");
像这样使用

$unsub_sql = mysql_query("Delete FROM TblNewsLetter WHERE Email = '".$_POST['email']."'");

您在一篇评论中说,您从表单提交处理程序执行Ajax调用。您需要通过使用事件对象的或从处理程序返回
false
来防止默认提交行为:

$("#yourFormSelectorHere").submit(function(e) {
    var newstr = $.trim($('#umail').val());

    $.post("coding/unsub.php",{email:newstr},function(result){
        $("#d_result").html(result);
    });

    e.preventDefault();
    // and/or
    return false;
});

您在一篇评论中说,您从表单提交处理程序执行Ajax调用。您需要通过使用事件对象的或从处理程序返回
false
来防止默认提交行为:

$("#yourFormSelectorHere").submit(function(e) {
    var newstr = $.trim($('#umail').val());

    $.post("coding/unsub.php",{email:newstr},function(result){
        $("#d_result").html(result);
    });

    e.preventDefault();
    // and/or
    return false;
});

如何调用
$.post()
代码?它是否在表单提交时调用的函数中?很可能您没有抑制
链接的默认行为,或者JavaScript中的某个地方出现错误,默认行为抑制不起作用。例如,尝试将
更改为
,并查看JS错误控制台中的消息。您可以在PHP代码末尾添加“die()”或“exit()”,以防万一。同时安装Firebug(Firefox扩展)打开控制台,检查是否有奇怪的请求。另外,在哪里调用$.post()?在document.ready()?nnnnn我调用表单提交上的代码。是的,很明显,您没有抑制本机提交行为,因此表单将被发送,页面将重新加载。您是否调用
$.post()
代码?它是否在表单提交时调用的函数中?很可能您没有抑制
链接的默认行为,或者JavaScript中的某个地方出现错误,默认行为抑制不起作用。例如,尝试将
更改为
,并查看JS错误控制台中的消息。您可以在PHP代码末尾添加“die()”或“exit()”,以防万一。同时安装Firebug(Firefox扩展)打开控制台,检查是否有奇怪的请求。另外,在哪里调用$.post()?在document.ready()?nnnnn我调用表单提交上的代码。是的,很明显,您没有抑制本机提交行为,因此表单将被发送,页面将被重新加载br,谢谢您的回复。我也变了,但它不起作用。我面临的问题不是php,我的代码工作得很好。如果问题不是php,为什么要显示php代码?显示处理AJAX调用的HTML/JS。brian,感谢您的回复。我也变了,但它不起作用。我面临的问题不是php,我的代码工作得很好。如果问题不是php,为什么要显示php代码?显示处理AJAX调用的HTML/JS。