запретить открывать ссылку, если она содержит это условие - PullRequest
0 голосов
/ 03 апреля 2020

Извините за этот вопрос, я думаю, что это не сложно, но я новичок в PHP, я попытался показать некоторые изображения продуктов со ссылкой, если товар доступен $ row ['p_status'] = = '1' ок, ссылка будет открыта, иначе она отобразит предупреждение , но я пытался написать какой-то код внутри, пока l oop, но когда я проверял его, он отображал много оповещение в соответствии с количеством этих элементов: $ row ['p_status'] == '0' , если у меня есть 5 товаров , которых будет недоступно, если я нажму на товар, он покажет мне пять alert.

Пожалуйста, помогите мне, это мой код.

<?php 
    $query = "SELECT * FROM products";
    $result = mysqli_query($conn,$query);                   
    while ($row = mysqli_fetch_assoc($result)) {
 ?>
    <div class="column">
            <img src="<?=get_image($row['image']);?>">
             <span>Add to Your Cart </span>
            <a href="mycart.php?add=<?=$row['product_id'];?>" id="a">
            <?php
            if ($row['pro_status']=='0') {
                # the link above not open but, how to do with code?
            }
            ?>
    </div>
<?php 
}
 ?>

Ответы [ 2 ]

2 голосов
/ 03 апреля 2020

Требуется оператор if, чтобы проверить, имеет ли статус 1. В случае, если он равен 1, вы показываете ссылку с помощью href, в противном случае вы вызываете событие onclick для отображения предупреждения об отсутствии на складе.

Это один из решения (проще для начинающих):

image">
0 голосов
/ 03 апреля 2020

Просто нужно, чтобы событие click возвращало false.

Следующее должно сделать это:

if ($row['pro_status']=='0') {
    $("#a").click(function(){
        return false;
    });
}

Другое решение - использовать protectDefault ()

if ($row['pro_status']=='0') {
    $("#a").click(function(e){
        e.preventDefault();
    });
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...