javascript - Ajax 数据发布无法通过发布的 url

标签 javascript php jquery ajax post

我正在尝试将数据发布到仅包含 php 代码的 php 站点,该代码应在第一页上单击 ID #mR-RateableFramePicture 时执行。这是通过 ajax 请求完成的:

    $('#mR-RateableFramePicture').dblclick(function() {
        $.ajax({
            type: "POST",
            url: 'moduleRateable/scriptSavedStyle.php',
            data: { rateableUserID: rateableUserID, rateablePictureID: rateablePictureID},
            success: function() {
                $('#DynamicContent').load('moduleRateable/scriptSavedStyle.php');
            }
        });
    });

    var rateableUserID = $('input[name="rateableUserID"]').val();
    var rateablePictureID = $('input[name="rateablePictureID"]').val();

这里是 ajax 发布到的 url 目的地:

<?php
// Start the session (enable global $_SESSION variable).
session_start();

// Include database-link ($conn).
include '../../scriptMysqli.php';

// Make global variable to simple variable.
$userID = $_SESSION["ID"];

//Save the rateable style to one owns libary of saved styles.    
$ratedUserID = $_POST['rateableUserID'];
$ratedPictureID = $_POST['rateablePictureID'];


$sql = $conn->query("UPDATE styles WHERE userID = '$ratedUserID;' AND 
pictureID = '$ratedPictureID' SET savedByUser = '$userID'");

?>

我收到以下错误消息:

注意:C:\xampp\htdocs\mystyle\app\moduleRateable\scriptSavedStyle.php 第12行未定义索引:rateableUserID

注意:C:\xampp\htdocs\mystyle\app\moduleRateable\scriptSavedStyle.php 第13行未定义索引:rateablePictureID

最佳答案

您没有在您的 $.ajax({}) 调用中传递变量 rateableUserID 和 rateablePictureID 的值,如下所示 -

数据:{ rateableUserID:rateableUserID,rateablePictureID:rateablePictureID}。除非它们是全局定义的,否则您将在 PHP 端获得未定义的值。请确保在调用之前已将值分配给 rateableUserID 和 rateablePictureID。但是,您仍然必须检查您是否真的在发布请求中传递了该变量,因为 PHP 找不到键名。

函数应该如下所示

$('#mR-RateableFramePicture').dblclick(function() {
     var rateableUserID = $('input[name="rateableUserID"]').val();
     var rateablePictureID = $('input[name="rateablePictureID"]').val();

        $.ajax({
            type: "POST",
            url: 'moduleRateable/scriptSavedStyle.php',
            data: { "rateableUserID": rateableUserID, "rateablePictureID": rateablePictureID},
            success: function() {
                $('#DynamicContent').load('moduleRateable/scriptSavedStyle.php');
            }
        });
    });

关于javascript - Ajax 数据发布无法通过发布的 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45879640/

相关文章:

javascript - 使用 jQuery 将 HTML 注入(inject) DOM 的最佳方法是什么?

javascript - jQuery 显示错误

javascript - 在 Chrome 扩展程序中打开默认电子邮件客户端时,“正文”为空

php - PHP 数组中的 MySQL 数据

php - 语法错误,意外的T_STRING,需要 ','或 ';'” [重复

php - Laravel Blade 在 foreach 中使用 if 条件

JavaScript 按星期几对数组数组进行排序

javascript - 如何从 backbone.js 中的模型获取数组元素

javascript - 使用 ng-repeat、filter 和 uib-popup-datepicker 过滤表列结果

javascript - 如何使用递归、rest/spread 运算符和解构将数组中的这些数字加倍?