2015-11-20 95 views
-1

我徹底研究了這個主題,但我的初學者編碼技巧想知道爲什麼PHP只渲染包含在INCLUDE腳本中的WHILE循環的一行。php include語句只執行WHILE循環的一個實例

爲了使您的回答簡單,這裏是我的問題的元素:

A)調用,包括PHP腳本:

include ("/DEMO/HtmlTabela.php"); 

B)的腳本包含的內容:

<?php 

$BrojRedova = 5; 

echo "<table border='1'>"; 
echo "<tr>"; 

echo "<td>Pozdrav</td>"; 
echo "<td>Ime</td>"; 
echo "<td>Prezime</td>"; 
echo "<td>Preduzece</td>"; 
echo "</tr>"; 

// Petlja za automatsko popunjavanje redova HTML tabele upotrebom PHP-a 
$brojac = 0; 
while($brojac<5) { 
     echo "<td>Gospodin</td>"; 
     echo "<td>Daniel</td>"; 
     echo "<td>Andric</td>"; 
     echo "<td>PPB</td>"; 
     echo "</tr>"; 
     $brojac++; 
} 

echo "</table>"; 

C)結果

Pozdrav Ime Prezime Preduzece Gospodin丹尼爾·安德里奇PPB

d)問題是,我寫的WHILE循環來得到這樣的結果:

Pozdrav IME Prezime Preduzece Gospodin丹尼爾·安德里奇PPB Gospodin丹尼爾·安德里奇PPB Gospodin丹尼爾·安德里奇PPB Gospodin丹尼爾Andric PPB Gospodin Daniel Andric PPB

+0

它可能正常工作,但您似乎有一個HTML錯誤,這可能會導致顯示信息時出現問題。您在while循環中缺少開頭的''元素。 – Chris

回答

1

您需要在while循環開始時使用echo('<tr>');來啓動表格行。檢查腳本的HTML輸出對調試PHP非常有幫助。

0

您的原始代碼存在問題。我認爲您忘記將echo('<tr>');放在while循環中。您可以像下面的代碼一樣使用它。

while($brojac<5) { 
    echo('<tr>'); 
    echo "<td>Gospodin</td>"; 
    echo "<td>Daniel</td>"; 
    echo "<td>Andric</td>"; 
    echo "<td>PPB</td>"; 
    echo "</tr>"; 
    $brojac++; 
} 
+1

這解決了它。謝謝大家回答。 – Daniel

+0

很高興爲你效勞。請考慮接受答案[(請參閱如何接受所​​有答案)](http://meta.stackexchange.com/questions/173399/how-to-upvote-on-stack-overflow),並提高我的答案是否有幫助你[(請參閱如何在堆棧溢出?)](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work) –

+1

@Daniel就像檸檬說的。這就是Stack的推出方式。否則,其他人可能會認爲你的問題仍然沒有解決,可能會試圖發佈更多答案。 –