使用.ajax方法将变量发布到php脚本的问题

时间:2009-09-29 21:55:19

标签: php jquery

我需要帮助从HTML页面中的onclick事件调用的js函数向php脚本发布值。任何帮助将不胜感激。

我有一个指向Google托管的jQuery库的链接。

我正在使用带有提交按钮的php渲染页面,其onclick操作在下面被看作updateSession(),它将值发布到应该更新MySQL表的php脚本。

我可以使用Fire Bug逐步执行脚本wile执行,但是一旦它退出jQuery库,我就看不到任何动作或消息。

----------脚本详情

来自php呈现的html页面的部分echo语句:

<input type=\"submit\" value=\"Submit\" class=\"close\" onClick=\"checkCode()\"/>

提交操作调用的js函数(我注释掉了我原来的尝试但留下了评论的位置):

function updateSession (){
    //$.post( "includes/update.php", { action: "y" });
    jQuery.ajax({
        url: "includes/update.php",
        type: "POST",
        processData: false,
        contentType: "text",
        data: { 'action': 'y'},
        success: function( data ) { // for debugging
            alert( data );
        }
    });
}

使用jQuery .ajax:

调用php脚本
<?php
    //session_start();
    require("includes/config.php");
    $db = mysql_connect($dbhost, $dbuser, $dbpassword);
    mysql_select_db($dbdatabase, $db) or die ( "Data Server Error");
    // connect to db
    // get session id from $_POST parm
    // add session id + validation marker to sessiondata table
    $action = mysql_real_escape_string($_POST['action']);
    //$idSession = SESSION_ID();

    $idSession = "sdfwe54645gaerg";
    $setCouponStateSql = "INSERT INTO appdata values ($idSession, $action);";
    $executeUpdate = mysql_query($setCouponState);

?>

2 个答案:

答案 0 :(得分:0)

我不是究竟是什么问题..但是php脚本不会发送任何输出所以在js你不会看到任何警报(数据);它应该作为空警报返回。

把回声“东西”;在最后的PHP脚本中然后测试。

答案 1 :(得分:0)

尝试使用firebug(使用'net'选项卡)查看AJAX调用发布的URL。

  • 如果网址不正确,那么您的ajax调用就会出现问题。

  • 如果网址看起来正确,请将其粘贴到浏览器中并观察PHP代码的行为。

您应该可以从那里进行调试。