2016-10-06 5 views
1

Ich fühle mich wie das sollte ziemlich einfach sein, aber ich bekomme nicht die Ergebnisse, die ich will. Ich habe ein E-Mail-Anmeldeformular, das auf allen meinen Websites angezeigt wird. Wenn sie zufällig meine Website mit dem Geschäftscode ama_br besuchen, verschwindet die E-Mail-Anmeldung. Das ist in Ordnung und das funktioniert. Meine elseif-Anweisung ist eine andere Form als die, die in allen Geschäftsansichten angezeigt wird, und ich möchte, dass dieses neue Formular nur angezeigt wird, wenn es den Geschäftscode ama_ca enthält. Es funktioniert nicht für mich und ich sehe nichts falsch mit meinem Code. Bitte helfen Sie. Vielen Dank.html eingebettet bedingte if-Anweisungen in PHP

  <?php if (Mage::app()->getStore()->getCode() != "ama_br"):?> 
       <ul> 
        <li><?php echo $this->__('Email Sign Up')?></li> 
        <li> 
         <form action="<?php echo $this->getUrl('email_preferences')?>" method="get" id="newsletter-validate-detail"> 
          <input name="email" type="text" id="newsletter" placeholder="<?php echo $this->__('Enter Email address')?>" title="<?php echo $this->__('Enter Email address')?>' class="required-entry validate-email"> 
          <button class="submit">+</button> 
          <input type="hidden" name="source" value="nt"> 
         </form> 
        </li> 
        <li class="footer-promo"><?php echo $this->getChildHtml('footer_promo')?></li> 
       </ul> 

      <?php elseif (Mage::app()->getStore()->getCode() == "ama_ca"):?> 
       <ul> 
        <li><?php echo $this->__('Email Sign Up')?></li> 
        <li> 
       <form method="post" action="http://enews.******.com/q/9MNK4U4iV9Mutb9YzTxF2zRWDIPgKoX0F0" accept-charset="UTF-8"> 
         <input type="hidden" name="crvs" value="6hZNXcISD79ac2Empmsr2az_B3Qc5osTNmkOdNHleqhPIYmsxEOe6PbgaUo-3WBn_Vbgorrbk4qjekx7w4tljA"> 
         <input type="hidden" name="CheckBox.Source.ca_footer" value="on"> 
         <input name="email" type="text" id="newsletter" placeholder="Enter Email address" title="Enter Email address' class=" required-entry=""> 
         <input type="hidden" id="submit" value="Sign Up"> 
         </form> 
        </li> 
        <li class="footer-promo"><?php echo $this->getChildHtml('footer_promo')?></li> 
       </ul> 
      <?php endif;?> 
+2

Logik. nur EINER Block eines 'if' wird ausgeführt. da du einen '! =' test in der ersten tust, dann ist '' ama_ca '! =' ama_br'' TRUE, und dieser Block wird ausgeführt, wobei ENTIRELLY die folgende '==' ama_ca''überspringt. –

+0

Setzen Sie zuerst den Haken für 'ama_ca'. – Barmar

+0

@ thismethod beziehen sich auf meine Antwort wird es Ihre Anfrage lösen –

Antwort

1

Beschreibung Sie alles richtig gemacht haben, aber sie gerade den Trick Blick sorgfältig auf Ihrer if-Anweisung Logic verpassen, dass, wenn Ihr Code nicht ist gleich zu ama_br, dass es zu ama_ca gleich sein kann so wird es die Form in if-Anweisung zeigt für ama_ca sowie auf einem anderen Zeichenfolge von ama_br so das Formular, das Sie auf Code zu versuchen, gleich zu ama_ca nicht angezeigt wird. Versuchen Sie eine der folgenden Möglichkeiten, um Ihre Anfrage zu lösen.

-Code

 <?php if (Mage::app()->getStore()->getCode() == "ama_ca"): ?> 
      <ul> 
      <li><?php echo $this->__('Email Sign Up') ?></li> 
      <li> 
      <form method="post" action="http://enews.******.com/q/9MNK4U4iV9Mutb9YzTxF2zRWDIPgKoX0F0" accept-charset="UTF-8"> 
      <input type="hidden" name="crvs" value="6hZNXcISD79ac2Empmsr2az_B3Qc5osTNmkOdNHleqhPIYmsxEOe6PbgaUo-3WBn_Vbgorrbk4qjekx7w4tljA"> 
      <input type="hidden" name="CheckBox.Source.ca_footer" value="on"> 
      <input name="email" type="text" id="newsletter" placeholder="Enter Email address" title="Enter Email address' class=" required-entry=""> 
      <input type="hidden" id="submit" value="Sign Up"> 
      </form> 
      </li> 
      <li class="footer-promo"><?php echo $this->getChildHtml('footer_promo') ?></li> 
     </ul> 

     <?php elseif (Mage::app()->getStore()->getCode() != "ama_br"): ?> 
      <ul> 
      <li><?php echo $this->__('Email Sign Up') ?></li> 
      <li> 
       <form action="<?php echo $this->getUrl('email_preferences') ?>" method="get" id="newsletter-validate-detail"> 
       <input name="email" type="text" id="newsletter" placeholder="<?php echo $this->__('Enter Email address') ?>" title="<?php echo $this->__('Enter Email address') ?>' class="required-entry validate-email"> 
        <button class="submit">+</button> 
       <input type="hidden" name="source" value="nt"> 
       </form> 
       </li> 
       <li class="footer-promo"><?php echo $this->getChildHtml('footer_promo') ?></li> 
      </ul> 
     <?php endif; ?> 

ODER

 <?php if (Mage::app()->getStore()->getCode() != "ama_br" && Mage::app()- >getStore()->getCode() != "ama_ca"): ?> 
      <ul> 
      <li><?php echo $this->__('Email Sign Up') ?></li> 
      <li> 
      <form action="<?php echo $this->getUrl('email_preferences') ?>" method="get" id="newsletter-validate-detail"> 
      <input name="email" type="text" id="newsletter" placeholder="<?php echo $this->__('Enter Email address') ?>" title="<?php echo $this->__('Enter Email address') ?>' class="required-entry validate-email"> 
        <button class="submit">+</button> 
        <input type="hidden" name="source" value="nt"> 
      </form> 
     </li> 
     <li class="footer-promo"><?php echo $this->getChildHtml('footer_promo') ?></li> 
     </ul> 

     <?php elseif (Mage::app()->getStore()->getCode() == "ama_ca"): ?> 
     <ul> 
      <li><?php echo $this->__('Email Sign Up') ?></li> 
     <li> 
     <form method="post" action="http://enews.******.com/q/9MNK4U4iV9Mutb9YzTxF2zRWDIPgKoX0F0" accept-charset="UTF-8"> 
      <input type="hidden" name="crvs" value="6hZNXcISD79ac2Empmsr2az_B3Qc5osTNmkOdNHleqhPIYmsxEOe6PbgaUo-3WBn_Vbgorrbk4qjekx7w4tljA"> 
      <input type="hidden" name="CheckBox.Source.ca_footer" value="on"> 
      <input name="email" type="text" id="newsletter" placeholder="Enter Email address" title="Enter Email address' class=" required-entry=""> 
      <input type="hidden" id="submit" value="Sign Up"> 
     </form> 
    </li> 
     <li class="footer-promo"><?php echo $this->getChildHtml('footer_promo') ?></li> 
    </ul> 
    <?php endif; ?> 
+0

Danke @Ahmer. Ich verwende die erste Antwort basierend darauf, wie die Logik funktioniert und weniger Code. – thismethod