Magento скрывается корзина для покупок и цены инъекций

я изменил magento код в
C: \ XAMPP \ HTDOCS \ Magento \ приложение \ дизайн \ оболочка \ MyPackage \ MyTheme \ шаблон \ каталог \ продукт \ list.phtml
C: \ XAMPP \ HTDOCS \ Magento \ приложение \ дизайн \ оболочка \ MyPackage \ MyTheme \ шаблон \ каталог \ продукт \ price.phtml

чтобы показывать цены только в том случае, если пользователь вошел в систему, а также скрыть кнопку корзины и цену, когда товар имеет цену 0,00
моя проблема в том, что я не хочу, чтобы пользователь использовал методы инъекции, чтобы обойти это, поэтому мой вопрос, является ли мой код уязвимым для инъекции SQL?

  <!-- To hide price if price is 0 if not display the details  -->
<?php if($_product->price==0): ?>
<?php  echo ''; ?>
<?php else: ?>
<?php echo $this->getPriceHtml($_product, true) ?>
<?php endif; ?>

<div class="actions">
<!-- To hide the shopping basket  -->
<?php if (Mage::getSingleton('customer/session')->isLoggedIn()): ?>
<?php if($_product->isSaleable() && ($_product->price>0)): ?>
<button type="button" title="<?php echo $this->__('Add to Cart')  ?>" class="button btn-cart" onclick="setLocation('<?php echo $this->getAddToCartUrl($_product) ?>')"><span><span><?php echo $this->__('Add to Cart') ?></span></span></button>
<?php else: ?>
<p class="availability out-of-stock"><span><?php echo $this->__('Auf anfrage') ?></span></p>
<?php endif; ?>
<!-- if they are not logged in then  -->
<?php else: ?>
<p class="nurfuer"><span><?php echo 'only for registered users'?></span></p>
<p class="nurfuer"><span><?php echo 'please register'?></span></p>
<?php endif; ?>

а также в файле price.phtml, который я добавил

<?php if (Mage::getSingleton('customer/session')->isLoggedIn()) { ?>
and at the end of the file
<?php } ?>

2

Решение

В вашем подходе нет SQL, поэтому понятно, что этот код не подходит для внедрения SQL.

Ответить на основной вопрос;

Могут ли пользователи, которые не вошли в систему, по-прежнему добавлять товары в корзину или
посмотреть цены?

Вы не сделали ничего, чтобы запретить пользователю использовать прямые ссылки для достижения определенной цели. Когда вы добавляете товар в корзину, вы вызываете определенный URL. Пользователи по-прежнему могут вызывать такой URL, чтобы добавить что-то в свою корзину. Когда люди хотят просмотреть свою корзину, они вызывают URL-адрес, который все еще может быть вызван …

Чтобы действительно убедиться, вам нужно будет также выполнить проверку входа в систему на контроллерах / действиях.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]