左右分开php mysql结果

时间:2011-03-07 14:03:16

标签: php css while-loop

enter image description here

 $flag=0;
 if($q->num_rows > 0) :
     echo '<div id="testimonial">';
     while($r = $q->fetch_array(MYSQLI_ASSOC)) :
         if($flag=0) :
              $class=test1; $flag=1;
         else :
              $class=test2; $flag=0;
         endif;

         echo '<div class="'.$class.'">';
           echo '<span class="left">';
           echo '<p>'.$r['compname'].'</p>';
           echo '<p>'.$r['position'].'</p>';
           echo '</span>';
           echo '<span class="right">';
           echo '<p>'.$r['testimonial'].'</p>';
           echo '</span>';
         echo '</div>';
     endwhile;
     echo '</div>';
 else :
     echo '<h1>Coming Soon</h1>';
 endif;

我希望结果看起来像图片!似乎我的PHP代码没有解决css类。当我回显结果时,它只显示1个类test1。所以结果都是对齐的。

4 个答案:

答案 0 :(得分:2)

您在if语句中有一项作业,而不是比较:if($flag=0)

答案 1 :(得分:2)

if($flag=0)
        ^ should be ==

虽然这很容易:

$i = 0;
while (…) {
    $class = $i++ % 2 ? 'test1' : 'test2';
}

答案 2 :(得分:1)

$class=test1; $flag=1;
       ^----^---
你也错过了一些引用。现在,您正在尝试分配一个名为“test1”和“test2”的常量,这些常量很可能未定义,因此它们将计算为空字符串。

答案 3 :(得分:1)

 $flag=0;
 if($q->num_rows > 0) :
     echo '<div id="testimonial">';
     while($r = $q->fetch_array(MYSQLI_ASSOC)) :
         if($flag==0) :
              $class='test1'; $flag=1;
         else :
              $class='test2'; $flag=0;
         endif;

         echo '<div class="'.$class.'">';
           echo '<span class="left">';
           echo '<p>'.$r['compname'].'</p>';
           echo '<p>'.$r['position'].'</p>';
           echo '</span>';
           echo '<span class="right">';
           echo '<p>'.$r['testimonial'].'</p>';
           echo '</span>';
         echo '</div>';
     endwhile;
     echo '</div>';
 else :
     echo '<h1>Coming Soon</h1>';
 endif;

这应该有效!