0

私はデータベースから一気に 3 つの証言を選択しようとしています.. それは私にとっては問題ありません。しかし、私の問題は、この 3 つの証言を 3 つの DIV に同時に配置する必要があることです。

    $q = "SELECT * FROM testimonials ORDER BY RAND() LIMIT 1";
        $r = mysqli_query($dbc, $q);

   while ( $row = mysqli_fetch_array($r, MYSQL_ASSOC) ) {


   }

 echo '<div class="testimonial-1">
                   <p>'. $testimonial. '</p>
                  </div>';

 echo '<div class="testimonial-2">
                   <p>'. $testimonial. '</p>
                  </div>';

 echo '<div class="testimonial-3">
                   <p>'. $testimonial. '</p>
                  </div>';

ありがとうございました..

4

2 に答える 2

1
$maxTestimonials = 3;
$query = "SELECT * FROM testimonials ORDER BY RAND() LIMIT $maxTestimonials";
$results = mysqli_query($databaseConnection, $query);

$count = 0;
$testimonialsTemplate = '<div class="testimonial-%d"><p>%s</p></div>';
while ($row = mysql_fetch_array($results, MYSQL_ASSOC))
{
    $count++;
    echo sprintf($testimonialsTemplate, $count, $row['column_name_to_display']);
}

また、関心の分離と、コードをより保守しやすい (および再利用可能な) 方法で構造化するのに役立つModel-View-Controllerを検討することをお勧めします。

于 2013-01-03T03:17:00.727 に答える
1

私はまだmysqlを使用しているので、mysqliにはあまり詳しくありません..しかし、あなたの質問に関する個人的なアプローチを提供できます。

$class_ctr = 1;
while ( $row = mysqli_fetch_array($r, MYSQL_ASSOC) ) {
    echo '<div class="testimonial-'.$class_ctr.'">
        <p>'. $row['column_name_to_display']. '</p>
    </div>';
    $class_ctr++;
}
?>

これがあなたにアイデアを与えることを願っています。

于 2013-01-03T03:03:12.367 に答える