嘿,我是PHP新手,我来自设计背景,但我现在正试图弄清楚一些PHP。
我在if else语句中遇到问题,我希望用户注册以查看产品价格(登录用户可以查看价格,但其他用户会看到'请注册'模糊)。但我无法弄清楚如何让寄存器URL在一个href标签内回显。
这是我的代码:
<?php if (Mage::getSingleton('customer/session')->isLoggedIn()) {
echo $this->getPriceHtml($_product, true);} else { echo '<a href="#">Please register to view prices</a>';}
?>
<?php echo Mage::helper('persistent')->getCreateAccountUrl($this->getCreateAccountUrl()) ?>
底部的代码用于调用注册URL。我无法弄清楚如何正确地将注册URL代码放入一个href标签中,而不会产生某种错误。有人可以帮忙吗?
答案 0 :(得分:0)
<?php
if (Mage::getSingleton('customer/session')->isLoggedIn()) {
echo $this->getPriceHtml($_product, true);
}
else {
echo '<a href="'.Mage::helper('persistent')->getCreateAccountUrl($this->getCreateAccountUrl()).'">Please register to view prices</a>';
}
?>
试试这段代码。基本上你想要将字符串连接在一起。 Mage :: helper ...返回一个字符串。因此,将该结果与包含html链接的静态字符串相结合。
对于这个问题有点深刻,但实际上我不会使用echo来显示任何HTML。尽可能使用php来显示动态内容。例如
<?php
if (Mage::getSingleton('customer/session')->isLoggedIn()) {
echo $this->getPriceHtml($_product, true);
}
else { ?>
<a href="<?php echo Mage::helper('persistent')->getCreateAccountUrl($this->getCreateAccountUrl());?>">Please register to view prices</a>
<?php } ?>