Застрял с JQuery AJAX формы отправки Вот фрагмент кода:
Javascript / HTML Code:
<form action="">
<button type="submit" class="submit-button-minus" id="submit-minus" name="submit-minus"><span class="hide-text"></span></button>
</form>
<form action="">
<button type="submit" class="submit-button-plus" id="submit-plus" name="submit-plus"><span class="hide-text"></span></button>
</form>
<!--store current page id from php variable into javascript variable-->
<?php echo "<script> jsPageID = " .$page_id. ";</script>"; ?>
<?php echo "<script> jsUsername = '" .$_SESSION['username']. "' ;</script>"; ?>
<script type="text/javascript">
$('document').ready(function(){
jsPageID = parseInt(jsPageID);
$('#submit-minus').click(function(){
jsPlusOrMinus = "minus";
ajax_painting_rating(jsPlusOrMinus, jsPageID, jsUsername);
});
$('#submit-plus').click(function(){
jsPlusOrMinus = "plus";
ajax_painting_rating(jsPlusOrMinus, jsPageID, jsUsername);
});
function ajax_painting_rating(jsPlusOrMinus, jsPageID, jsUsername)
{
$.get(
'ajax-painting-rating.php',
{plus_or_minus: jsPlusOrMinus, page_id: jsPageID, user_name:jsUsername },
function(data){
$('#rating-value').html(data);
}
);
}
});
</script>
Теперь вот код PHP:
<?php
include("include_db_connection.php");
$get_plus_or_minus = $_GET['plus_or_minus'];
$get_page_id = $_GET['page_id'];
$get_user_name = $_GET['user_name'];
if($get_plus_or_minus == "plus")
{
$rating=1;
$rating_insert_query = "INSERT INTO ..............";
$rating_insert_result = mysqli_query($db_conn, $rating_insert_query);
}
if($get_plus_or_minus=="minus")
{
$rating=-1;
$rating_insert_query = "INSERT INTO ..............";
$rating_insert_result = mysqli_query($db_conn, $rating_insert_query);
}
/* more queries here....*/
/*this is what i will be returning back from the server, to the ajax request*/
echo $FINAL_RESULT;
?>
Теперь, когда я пытаюсь выполнить приведенный выше код, форма "иногда" отправляется в db. Я не могу придумать причину, почему «иногда».
Кроме того, есть некоторые данные, которые каким-то образом добавляются в URL после обработки запроса. Пример: если исходный URL-адрес веб-страницы перед выполнением запроса ajax выглядит примерно так: «page.html? Id = 6», то при выполнении запроса ajax URL-адрес страницы добавляется, как показано ниже:
"page.php? Id = 6 & submit-minus =" (если кнопка submit-minus использовалась для вызова ajax-запроса)
Я не понимаю, почему в URL добавляется знак минус, а также, когда данные редко добавляются в БД.
Спасибо за ваше время.