Как отправить $ _GET по Ajax - PullRequest
0 голосов
/ 21 сентября 2019

Я пытаюсь отправить ajax с ошибкой $ _GET ['CategoryID'] для вызова в файле назначения getdata.php, и я не могу заставить его работать, я не могу найти идеальную информацию здесь.Я знаю, что я действительно нуб, но я очень стараюсь учиться.

Я пробовал много разного кода, и он все еще не работает.

<button type="button" name="btn_more" data-vid="<?php echo $stockID; ?>" id="btn_more" class="btn btn-success form-control">Ver Mais</button>
<input class="form-control" id="PresentCategoryID" name="PresentCategoryID" data-cat="<?php echo $_GET['categoryID']; ?>" value="<?php echo $_GET['categoryID']; 


<script>  
 $(document).ready(function(){  
      $(document).on('click', '#btn_more', function(){  
           var last_video_id = $(this).data("vid");
               var PresentCategoryID= ('PresentCategoryID');
           $('#btn_more').html("<div class=loader></div>");  
           $.ajax({  
                url:"getdata.php",  
                method:"POST",
                    data:{
                         last_video_id:last_video_id,
                         PresentCategoryID:PresentCategoryID},  
                dataType:"text",  
                success:function(data)  
                {  
                     if(data != '')  
                     {  
                          $('#remove_row').remove();  
                          $('#result').append(data);  
                     }  
                     else  
                     {  
         $('#btn_more').html("No Data");  
           }  
         }  
      });  
   });
 });  
</script>

Моя цель -вызовите categoryID в getdata.php, как это,

<?php  
$output = '';  
$stockID = '';
$PresentCategoryID = '';
sleep(1);  
include 'includes/dbh.inc.php';
include 'includes/rating.inc.php';
$sql = "SELECT stock.stockID, stock.name, stock.marca, stock.origem, stock.categoryID, stock.thumbnail, category.name AS catname FROM stock JOIN category ON stock.categoryID=category.categoryID WHERE stock.categoryID='$PresentCategoryID' AND stockID > ".$_POST['last_video_id']." LIMIT 4";

?>

Ответы [ 3 ]

0 голосов
/ 21 сентября 2019

вы хотите отправить через 'GET', но используете метод 'POST'.

С уважением, MrKampf

0 голосов
/ 21 сентября 2019

эй, проверьте этот ответ, который поможет вашей проблеме

$(document).ready(function() {
    $(document).on('click', '#btn_more', function() {
        var last_video_id = $(this).data("vid");
        var PresentCategoryID = ('#PresentCategoryID').val();
        $('#btn_more').html("<div class=loader></div>");
        var data = {
            last_video_id,
            PresentCategoryID
        };

        $.get('getdata.php', JSON.stringify(data)).done(response => {
            console.log(response);
            if (response != '') {
                $('#remove_row').remove();
                $('#result').append(response);
            } else {
                $('#btn_more').html("No Data");
            }

        }).fail(() => {
            console.log("Something went wrong");
        });
    });

});

PHP SCRIPT

<? php
include 'includes/dbh.inc.php';
include 'includes/rating.inc.php';
if ($_SERVER['REQUEST_METHOD'] == 'GET') {
//if you using get request
//recommended way to get the data use the mysqlconn->real_escape_string($_GET['last_video_id']);
    $last_video_id = $_GET['last_video_id'];
    $PresentCategoryID = $_GET['PresentCategoryID'];
    sleep(1);
    $sql = "SELECT stock.stockID, stock.name, stock.marca, stock.origem, stock.categoryID, stock.thumbnail, category.name AS catname FROM stock JOIN category ON stock.categoryID=category.categoryID WHERE stock.categoryID='$PresentCategoryID' AND stockID='$$last_video_id'";
    " LIMIT 4";
} else if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    //if you using post request then in jquery remove $.get to just $.post 
    $data = json_decode(file_get_contents('php://input'),true);
    $last_video_id = $data['last_video_id'];
    $PresentCategoryID = $data['PresentCategoryID'];
}
0 голосов
/ 21 сентября 2019
var PresentCategoryID= ('PresentCategoryID')

должно быть

var PresentCategoryID= $('#PresentCategoryID').val();

Вам необходимо использовать $, чтобы выбрать элемент, добавить префикс #, чтобы использовать его в качестве идентификатора, и .val(), чтобы получить значениеввода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...