Magento隐藏购物篮和价格注入

时间:2014-12-04 09:24:52

标签: php magento code-injection

我更改了magento代码 C:\ XAMPP \ htdocs中\ Magento的\ APP \设计\前台\ 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 } ?>

1 个答案:

答案 0 :(得分:0)

您的方法中没有SQL,因此可以理解此代码对于SQL注入是不可行的。

回答基本问题;

  

未登录的用户是否仍可将产品添加到购物篮或   查看价格?

您没有采取任何措施阻止用户使用直接网址来实现某个目标。将产品添加到购物篮时,您将调用某个URL。用户仍然可以调用这样的网址来向他们的购物篮添加内容。当人们想要查看他们的篮子时,他们会调用一个仍然可以调用的URL ...

要真正确定,您还必须对控制器/操作进行“登录”检查。