我对 PHP 很陌生,而且我以前从未做过 AJAX——我决定使用 Jquery .ajax 函数,因为它比 .post 有更多的自定义,而且我喜欢它的简洁性而不是普通的 javascript。
这是ajax代码
$("#upvotearrow").click(function() {
var dataString="vote=upvote";
$.ajax({
type: "POST",
url: "../secure/process_upvotedownvote.php",
data: dataString
})
.done(function() {
alert("Upvote registered!");
});
});
到目前为止,外部 PHP 文件是这样的:
include "db_connect.php";
include "functions.php";
if(isset($_POST['vote']) && !empty($_POST['vote'])) {
$poemid=7;
$typeofvote = $_POST['vote'];
if ($typeofvote=="upvote") {
if ($insert_stmt = $mysqli->prepare("UPDATE poems SET poem_upvotes=poem_upvotes+1 WHERE poem_id=?")) { //Prepare SQL statement
$insert_stmt->bind_param('i',$poemid); //Bind parameters
$insert_stmt->execute();// Execute the prepared query.
}
}
}
该$mysqli
变量很好,当我在数据库中键入它时查询就可以工作,所以我的问题本质上是我是否正确地将数据从 AJAX 传输到 PHP。
另外 - 一个附带问题 - 我调用的 PHP 文件是否可以从进行 AJAX 调用的页面的 URL 访问变量?(即 url 是http://website.com/poem_id=7
,我想访问该poem_id
值?