Как передать идентификатор из параметра URL на другую страницу с помощью AJAX - PullRequest
0 голосов
/ 28 марта 2019

Я создаю сайт электронной коммерции по php. На моей домашней странице, когда кто-либо нажимает любую категорию (например, мобильную) на странице магазина, я хочу показать этот продукт, получив идентификатор категории в URL страницы магазина. Я хочу сделать это с помощью ajax, а также, когда на любой странице магазина будет установлен флажок любого бренда (например, samsung), товар будет автоматически загружаться с помощью ajax.

Я могу показать продукт, соответствующий марке, когда установлен флажок, но я не могу показать продукт, относящийся к категории, потому что не знаю, как передать идентификатор категории по ajax и поймать идентификатор на странице магазина

Я пробовал таким образом

На странице магазина Ajax позвоните

<script type="text/javascript">

$(document).ready(function() {
    filter_data();
    function filter_data()
    {
        $('.filter_data').html('<div id="loading"style=""></div>');
        var action='action';
        var brand=get_filter('brand');
        var id = <?php echo $_GET['id']; ?>; // get id from page url
        $.ajax({
            url: 'action.php',
            type: 'POST',
            data: {action: action,brand: brand,id: id},
            success:function(data)
            {
                $('.filter_data').html(data);
            }
        });
    }
//load by check the checkbox
    function get_filter(class_name) {
        var filter=[];
        $('.'+class_name+':checked').each(function() {
            filter.push($(this).val());
        });
        return filter;
    }
    $('.common_selector').click(function() {
        filter_data();
    });
});
</script>

показать категорию и марку товара

<?php
session_start();
include'core/db.php';
if (isset($_POST["action"])) {
    $query="select * from product where cat=id "; // selecting category wise product by id which was sent from ajax but faild 
}
if (isset($_POST["brand"])) {
    $brand_filter = implode(',',$_POST['brand']);
    $query="select * from product where brand IN ('$brand_filter')";
    $dbquery=mysqli_query($db,$query);
    $count =mysqli_num_rows($dbquery);
    $output = '';
    if ($count > 0) {
        while ($bf=mysqli_fetch_assoc($dbquery))
        {
            $output.='<div class="col-md-3 ">
                        <div class="product">
                         <h3>'.$bf["title"].'</h3>
                         <img src="img/'. $bf['image'] .'" class="img-responsive" >
                            <p class="Price"><b>Price:</b>'.$bf["price"].' </p>
                            <a href="details.php?id='.$bf['id'].'" class="btn btn-success">
                                Details
                            </a>
                              <button id="product" pid='.$bf["id"].' class="btn btn-primary">
                                <span class="glyphicon glyphicon-shopping-cart"></span> Add Cart
                            </button>

                        </div>
                    </div>';
        }
    } else {
        $output = '<h3>No Data Found</h3>';
    }
    echo $output;
}

С 6 месяцев я застрял в этом проекте, если его решить, то пользовательская часть будет завершена, поэтому я смиренно прошу вашей помощи ....

1 Ответ

0 голосов
/ 28 марта 2019

Вы должны получить значения идентификатора, прежде чем передавать его в запросе

<?php
    session_start();

    include'core/db.php';
    if (isset($_POST["action"])) {
        $_SESSION['id'] = $_POST['id'];
        $id=$_SESSION['id'];

        $query="select * from product where cat='$id' "; // selecting category wise product by id which was sent from ajax but faild 
    }
    elseif (isset($_POST["brand"])) {
        $brand_filter = implode(',',$_POST['brand']);
        $query="select * from product where brand IN ('$brand_filter')";
    }
        $dbquery=mysqli_query($db,$query);
        $count =mysqli_num_rows($dbquery);
        $output = '';
        if ($count > 0) {
            while ($bf=mysqli_fetch_assoc($dbquery))
            {
                $output.='<div class="col-md-3 ">
                            <div class="product">
                             <h3>'.$bf["title"].'</h3>
                             <img src="img/'. $bf['image'] .'" class="img-responsive" >
                                <p class="Price"><b>Price:</b>'.$bf["price"].' </p>
                                <a href="details.php?id='.$bf['id'].'" class="btn btn-success">
                                    Details
                                </a>
                                  <button id="product" pid='.$bf["id"].' class="btn btn-primary">
                                    <span class="glyphicon glyphicon-shopping-cart"></span> Add Cart
                                </button>

                            </div>
                        </div>';
            }
        } else {
            $output = '<h3>No Data Found</h3>';
        }
        echo $output;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...