Bu döngü güzel yazmak nasıl?

2 Cevap php

Ben sadece bu konuyu okudum http://stackoverflow.com/questions/2930533/highlight-search-keywords-on-hover ve aslında oldukça aynı yapıyı kullanmak, ama korkunç görünüyor. Yani ben aynı anda php ve html demek, bir php dosyasında bu döngü güzel yazmak nasıl, bana bir tavsiye verebilir?

<table class="result">
    <?php while ($row= mysql_fetch_array($result, MYSQL_ASSOC)) {
    $cQuote =  highlightWords(htmlspecialchars($row['cQuotes']), $search_result);
    ?>
    <tr>
    <td style="text-align:right; font-size:15px;"><?php h($row['cArabic']); ?></td>
    <td style="font-size:16px;"><?php echo $cQuote; ?></td>
    <td style="font-size:12px;"><?php h($row['vAuthor']); ?></td>
    <td style="font-size:12px; font-style:italic; text-align:right;"><?php h($row['vReference']); ?></td>
    </tr>
<?php } ?>

2 Cevap

Şahsen ben değerleri sadece, böylece, veritabanı bağlantıları yaparak işlevlerini çağıran ve dışarı değil yazdırma için HTML bölümüne devam edecek. Böyle bir şey:

<?php
$rows = array();
while ($row= mysql_fetch_array($result, MYSQL_ASSOC))
{
    $row['cquote_hi'] = highlightWords(htmlspecialchars($row['cQuotes']), $search_result);
    $rows[] = $row;
}
?>

<table class="result">
    <?php foreach ( $rows as $row ) : ?>
    <tr>
    <td style="text-align:right; font-size:15px;"><?php h($row['cArabic']); ?></td>
    <td style="font-size:16px;"><?php echo $row['cquote_hi']; ?></td>
    <td style="font-size:12px;"><?php h($row['vAuthor']); ?></td>
    <td style="font-size:12px; font-style:italic; text-align:right;"><?php h($row['vReference']); ?></td>
    </tr>
    <?php endforeach; ?>
</table>

Sunucu kurulumu izin veriyorsa, kısa etiketleri ile değişkenleri echo: <?=$row['cquote_hi']?>

Ben h () fonksiyonu ne yaptığını bilmiyorum ama döngü, sonra sadece değişkenleri yankı yaparken, belki de orijinal her bir değişken için diyebiliriz.

Bu benim şekilde olacaktır:

<?

echo '<table class="result">';

while ($row= mysql_fetch_array($result, MYSQL_ASSOC)) {

    $cQuote =  highlightWords(htmlspecialchars($row['cQuotes']), $search_result);

    echo '
    <tr>
        <td style="text-align:right; font-size:15px;">'.h($row["cArabic"]).'</td>
        <td style="font-size:16px;">'.$cQuote.'</td>
        <td style="font-size:12px;">'.h($row["vAuthor"]).'</td>
        <td style="font-size:12px; font-style:italic; text-align:right;">'.h($row["vReference"]).'</td>
    </tr>';
}

echo '</table>';

?>

Tüm php ...