-2

私はこのコード(PHP)を持っています:

<div class="rocksType_DBitems_container">
  <?php
    define ('ACCESS', 1);           
    require_once 'database.php';       
    $db = new Database();           
    $sql = 'SELECT Drn,Src,Tit,Sub FROM Img_Ardosias WHERE Drn > :id';             
    $parameters = array(':id' => 0);
    $results = $db->getArray($sql, $parameters);
    foreach ($results as $index => $result){
      $html = '<div class="rocksType_DBitem">
                 <p>
                 <span class="rocksType_title">'.$result['Tit'].'</span>
                 <br/>
                 <span class="rocksType_subtitle">'.$result['Sub'].'</span>
                 </p>
                 <img class="rocksType_image" src="'.$result['Src'].'" alt="" />
               </div>';
      echo $html;
    }
  ?>
</div> <!-- End of class="rocksType_DBitems_container" -->

...基本的に、最初の 3 つの div が残りとは異なる css スタイルを持つ垂直レイアウトで、内部に画像とテキストを含むいくつかの div を動的に作成します。

私の質問は簡単です: 動的に作成された 1 番目、2 番目、3 番目の div (class="rocksType_DBitem を持つもの) に 3 つの異なるクラスを追加するにはどうすればよいですか?

4

2 に答える 2

1

私はあなたのコードに追加します

$results = $db->getArray($sql, $parameters);    

extraClasses = array('green', 'blue', 'yellow');
i = 0;
foreach ($results as $index => $result){
  extraClass = '';
  if (i<3) {
      extraClass = extraClasses[i];
      i++;
  }

  $html = '<div class="rocksType_DBitem "'+extraClass+'">
             <p>
             <span class="rocksType_title">'.$result['Tit'].'</span>
             <br/>
             <span class="rocksType_subtitle">'.$result['Sub'].'</span>
             </p>
             <img class="rocksType_image" src="'.$result['Src'].'" alt="" />
           </div>';
  echo $html;
}
于 2013-07-15T15:46:46.597 に答える