2016-10-01 32 views
0

好吧,我有一個for循環,顯示書籍及其關聯的銷售信息...我有它正確顯示..我有一個for循環,通過數組並顯示信息。我想要做的就是讓for循環僅顯示關於精裝書或平裝書的信息,如果它們的值僅爲0以上; 我試圖把一個for循環中echo語句,但它給我一個錯誤.. 我有一種感覺它與方式做我這裏concatinating的values..anyway是我的for循環如何在回聲中使用if語句php

function displayData($array){ 

    // create a form 

echo ' <form action="order_summary.php" method="post">'; 

// for loop to go through data 

    for($row = 0; $row < sizeof($array);$row++){ 

echo '<div class="book-details"><img src="images/' . 
    $array[$row]['isbn'].'.jpg" alt="'.$array[$row]['title'] .'" >'. 
    '<br/>'.$array[$row]['title'].'<br/>by '.$array[$row]['author']. 
    '<br/><input type="radio" name="orders['.$array[$row]['title']. 
    ']" value="hardcover" >Hardcover: $'.$array[$row]['hardcover']. 
    '<br/><input type="radio" name="orders['.$array[$row]['title']. 
    ']" value="softcover" >Softcover: $'.$array[$row]['softcover']. 
    '<br/><input type="radio" name="orders['.$array[$row]['title']. 
    ']" value="e-book" >E-Book: $'.$array[$row]['e-book']."</div>"; 

}; 

echo '<div class = "cart"><input type="submit" value="Add Selected Items to Cart"></div>'; 

echo '</form>'; 

    }// end of function 

我想有這樣的事情

if (!$array[$row]['hc-quantity']== 0) { 
// display hardcover price 
} 
else { 
    go to the next book and repeat check for softcover 
}; 

可以請你幫我工作了這一點...

+0

什麼問題呢?你有沒有把你的'if'語句添加到你的代碼? –

+0

我有,但當我這樣做給我一個錯誤 –

+0

順便說一句,'if(!$ array [$ row] ['hc-quantity'] == 0){...'應該是'if($ array [$ row] ['hc-quantity']!= 0){...' –

回答

1

你可以通過使用foreach語法提高你的代碼。您建議的if條件接近,但!運算符實際上是在數組元素上進行操作,而不是在等式上。

我還建議關閉PHP標記來生成HTML,而不是使用echo。然後使用<?= ... ?>在您的HTML中注入PHP值。而對於if條件,您可以插入一些<?php ... ?>塊。

這裏是適應代碼(僅for環路):

<?php 
// ... other code ... 

foreach ($array as $item){ 
?> 
<div class="book-details"> 
    <img src="images/<?=$item['isbn']?>.jpg" alt="<?=$item['title']?>"><br> 
    <?=$item['title']?><br> 
    by <?=$item['author']?><br> 
<?php 
if ($item['hc-quantity'] > 0) { 
?> 
    <input type="radio" name="orders[<?=$item['title']?>]" value="hardcover"> 
     Hardcover: $<?=$item['hardcover']?><br> 
<?php 
} 
if ($item['sc-quantity'] > 0) { 
?> 
    <input type="radio" name="orders[<?=$item['title']?>]" value="softcover"> 
     Softcover: $<?=$item['softcover']?><br> 
<?php 
} 
?> 
    <input type="radio" name="orders[<?=$item['title']?>]" value="e-book"> 
     E-Book: $<?=$item['e-book']?> 
</div> 
<?php 
} 

// ... more code 
// 
?> 
+0

爲我工作..謝謝你 –

+0

不客氣;-) – trincot