如何使用条件回声

问题描述:

我有一种形式来添加产品到购物车,并且里面有一个链接。如何使用条件回声

这是链接

<?php 
    echo $this->Html->link('<div class="single-products">'.'<div class="productinfo text-center myimg">'.$this->Html->image("product/".$row["Product"]["photo"],array(/*"width"=>"2500px",*/"height"=>"250px")).'<h2> &#8377 '.$row["Product"]["price"].'</h2>'.'<p>'.$row["Product"]["name"]."</p><a href='javascript:document.ff".($i++).".submit()' class='btn btn-default add-to-cart'><i class='fa fa-shopping-cart'></i>Add to cart</a>".'</div>'.'</div>', 
     array 
     (
      'controller'=>'Public', 
      'action'=>'singleproduct?id='.$row["Product"]["id"], 
     ), 
     array 
     (
      'escape'=>false //NOTICE THIS 
     ) 
    ); 
?> 

而且我想用这个代码略高于Add to cart按钮

<?php 

    if($row["Product"]["psize"]==1) 
    { 
?> 
     Size<select name="psize"> 
       <option value="S">S</option> 
       <option value="M">M</option> 
       <option value="L">L</option> 
       <option value="XL">XL</option> 
      </select> 
<?php 
    } 
    elseif($row["Product"]["psize"]==2) 
    { 
?> 
     Size<select name="psize"> 
       <option value="28">28</option> 
       <option value="30">30</option> 
       <option value="32">32</option> 
       <option value="34">34</option> 
      </select> 
<?php 
    } 

?> 

,如果我把它放在这个HTML辅助环节之外这个代码工作,但由于设计问题,我想显示它只是在添加到购物车按钮 我试过,但无法弄清楚如何把这个内部链接。

+0

如果你使用否则只能代替ELSEIF的。 –

+0

并尝试删除“==”为“=”。 –

+0

谢谢大家,但我soved我的问题。我从链接中删除购物车按钮,并把它放在外面,然后我能够使用上面的购物车按钮上面的代码。 – Vky

   <?php 

       if($row["Product"]["psize"]==1) 
       { 
       ?> 
       Size<select name="psize"> 
         <option value="S">S</option> 
         <option value="M">M</option> 
         <option value="L">L</option> 
         <option value="XL">XL</option> 
        </select> 
       <?php 
       } else{ 

         if($row["Product"]["psize"]==2){ 

          ?> 
         Size<select name="psize"> 
         <option value="28">28</option> 
         <option value="30">30</option> 
         <option value="32">32</option> 
         <option value="34">34</option> 
        </select> 
       <?php 

         } else{ 
         echo "TEY IT" 
         } 
       } 


       ?> 

可能会失去帮助。

在函数$this->Html->link()中引出您的代码,将其分配给一个变量并使用if条件。我想你应该使用CakePHP Form Helper来输出选择框。

例子:

<?php 

$select = $this->Form->input('psize', array(type => 'select', 'options' => $sizeOptions)); // you can use if conditions here 

$link = $this->Html->link('<div>...</div>' . $select . '<div>...</div>', $yourUrlArr); 
echo $link;