2012-09-13 29 views
2

我想顯示文本內容只是與PHP的條件,但我有幾個錯誤,我不明白哪裏有人可以幫助我這個錯誤,這裏是代碼:如果條件的HTML代碼中的PHP內容

<?php 
    if(
    isset($_POST['send']) && 
    !validateDiscp($_POST['Discp']) || !validateSize($_POST['Size']) 
) : ?> 

<div id="error"> 
    <ul> 
    <?php if(!validateDiscp($_POST['Discp'])):?> 
    <li><strong>Discription:</strong>Discription need to be larger then 10!</li> 
    <?php endif?> 
    <?php if(!validateSize($_POST['Size'])):?> 
    <li><strong>Invalid Size:</strong> Size needs to bi S M L XL</li> 
    <?php endif ?> 
     </ul> 
</div> 

<?php elseif(isset($_POST['send'])):?> 
<div id="error" class="valid"> 
    <ul> 
    <li><strong>Congratulations!</strong> All fields are OK ;)</li> 
    </ul> 
</div> 
<?php endif ;?> 
+1

一對夫婦的''會錯過的結束分號 - ,另一方面是有')'微笑:PP – moonwave99

+0

我看不出任何語法錯誤。你能發佈錯誤消息嗎? –

+0

嗨,對不起,但我沒有看到我錯過了這個 – Apocaliptica61

回答

1

我會重寫整個外部塊。相反:

<? if(isset($_POST['send'])&& !validateDiscp($_POST['Discp']) || !validateSize($_POST['Size'])) { ?> 
     <div id="error"> 
      <ul> 
       <?php if(!validateDiscp($_POST['Discp'])) { ?> 
        <li><strong>Discription:</strong> Discription need to be larger then 10!</li> 
       <?php } ?> 
       <?php if(!validateSize($_POST['Size'])) { ?> 
        <li><strong>Invalid Size:</strong> Size needs to bi S M L XL</li> 
       <?php } else { 
     $nothing = true; 
       ?> 



      </ul> 
     </div> 

    <?php if(isset($nothing) and isset($_POST['send'])) { ?> 
     <div id="error" class="valid"> 
      <ul> 
       <li><strong>Congratulations!</strong> All fields are OK ;)</li> 
      </ul> 
     </div> 

    <? } ?> 

我認爲你的邏輯的缺陷是你有一個其他的聲明是懸而未決的。相反,添加一些邏輯來檢測何時觸發了其他情況,並添加額外的邏輯和您的好處。

+0

嗨有 我需要解釋一下預期的行爲: 這段代碼需要檢查第一如果從發送如果是的他檢查函數: validateSize和validateDiscp爲假 如果是,他需要顯示消息o1或2 如果它被髮送並且函數返回true,則顯示消息3 如果未發送,則不顯示任何事情。 – Apocaliptica61

+0

它沒有作品LOL – Apocaliptica61

1

所有的endif都需要有;後面。另外,我不確定這是一個實際的錯誤還是隻是代碼被包裝,但確保您的第一個if都在一行。

+0

有人有其他想法嗎?我知道這是isset($ _ POST ['send2'])alwiase true – Apocaliptica61

+0

好的,那麼我需要看到表單的HTML。 – Abraham

+0

嗨它正在工作現在這裏是代碼: – Apocaliptica61

0

改變的事情是在這裏工作後的代碼

 <?php if(isset($_POST['send']) && !validateDiscp($_POST['Discp'])|| !validateSize($_POST['Size']) ):?> 

    <div id="error"> 
       <ul> 
        <?php if(!validateDiscp($_POST['Discp'])):?> 
         <li><strong>Discription:</strong> Discription need to be larger then 10!</li> 
        <?php endif;?> 
        <?php if(!validateSize($_POST['Size'])):?> 
         <li><strong>Invalid Size:</strong> Size needs to bi S M L XL</li> 
        <?php endif; ?> 



       </ul> 
      </div> 
    <?php elseif(isset($_POST['send'])):?>