私は 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 から変数にアクセスすることは可能ですか? (IE は URL で、値http://website.com/poem_id=7
にアクセスしたいですか?poem_id