我正在尝试将数据发布到仅包含 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/