问题是:
您好,我确保我的PHP文件工作正常,但不幸的是我的ajax代码不工作。我将ajax放在一个javascript函数中,以便在需要时调用该文件,但是当该函数被执行时,什么都不会发生。
代码:
这里是我的JS代码:
function countdownEnded() {
//make serverscreen dissapear
document.getElementById('serverScreenWrapper').style.display = 'none';
document.getElementById('serverScreenWrapper').style.opacity = '0';
document.getElementById("cashOutNumTwo").style.right = '150%';
document.getElementById("cashOutNumOne").style.right = '150%';
//start Timer
setInterval(gameTimer.update, 1000);
//make player move again
socket.emit('4');
socket.emit('6');
//make game appear
document.getElementById('gameAreaWrapper').style.opacity = 1;
//play sound
document.getElementById('spawn_cell').play();
//cut 5 cents from account - php function
$.ajax({
type: "POST",
url: 'http://cashballz.net/game/5game/subtract5.php',
data: { },
success: function (data) {
alert(data);
}
});
}
My HTML:
<script src="//code.jquery.com/jquery-2.2.0.min.js"></script>
甚至我的PHP:
<?php
session_start();
$servername = "localhost";
$username = "myName";
$password = "myPass*";
$dbname = "myDBname";
$cash_amount = $_SESSION['cash_amount'];
// Create connection
$userid = $_SESSION['id'];
// You must enter the user's id here. /\
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
// Fetch the existing value of the cash_amount against that particular user here. You can use the SELECT cash_amount from users where userid = $userid
$_SESSION['cash_amount'] -= 0.05;
$sql = "UPDATE users SET cash_amount = cash_amount - 0.05 WHERE id = ?";
$stmt = $conn->prepare($sql);
$stmt->bind_param('s', $userid);
$result = $stmt->execute();
if($result)
{
echo "5 cents have been subtracted!";
}
else
{
echo mysqli_error($conn);
session_start();
session_unset();
session_destroy();
}
$conn->close();
?>
结论:
我不明白为什么我的文件没有被调用。
我有JQuery,我对AJAX做了相当多的研究,并在这个网站上研究了其他类似的问题。
我转到文件链接,它工作得很好,所以我非常确定这是一个javascript错误。
我对JS很在行,但对PHP和JQuery来说还是个初学者。
谢谢你的帮助。
发布于 2018-06-27 08:38:58
尝试修改ajax调用以包含错误处理程序。举个例子:
$.ajax({
type: "POST",
url: 'http://cashballz.net/game/5game/subtract5.php',
data: { },
success: function (data) {
alert(data);
},
error: function(data) {
alert(data);
}
发布于 2018-06-27 08:40:16
PHP:header('Access-Control-Allow-Origin: *');
允许跨域访问。
https://stackoverflow.com/questions/51052964
复制相似问题