php里面的随机单元格

时间:2011-10-12 07:33:44

标签: php mysql html html-table

我有这个代码用于从mysql打印多列表

$k="<table width='100%' border='0' cellpadding='5'><tr>"; 
$h=mysql_query("select * from news order by id desc limit 0,12");
$col=0;
while($row=mysql_fetch_assoc($h)){
    $col++; 
    $k .="
    <td>
    Text here
    </td>
    "; 
    if($col==3){
        $k .="</tr><tr>";
        $col=0;    
    }  
}
$k .="</tr></table>";
echo $k;

我想在此表中添加一个随机单元格,例如广告代码,我希望每列显示一次广告代码。

输出应该是这样的

<table border="1" width="100%">
    <tr>
        <td>Title :$row[name]</td>
        <td>ADV Code1</td>
        <td>Title :$row[name]</td>
    </tr>
    <tr>
        <td>ADV Code2</td>
        <td>Title :$row[name]</td>
        <td>Title :$row[name]</td>
    </tr>
    <tr>
        <td>Title :$row[name]</td>
        <td>Title :$row[name]</td>
        <td>ADV Code3</td>
    </tr>
    <tr>
        <td>ADV Code4</td>
        <td>Title :$row[name]</td>
        <td>Title :$row[name]</td>
    </tr>
</table>

我该怎么做?

此致 松树的

1 个答案:

答案 0 :(得分:0)

使用rand(0,2),它会给你一个0到2之间的随机数。只要有一个新行,你就会创建一个随机数,比如

$next_ad_col = rand(0,2);

由于你在计算$ col中的列,你可以去

if($col == $next_ad_col) {
  // Add ad
} else {
  $k .="<td>Text here</td>";
}

然后,如果创建了一个新行(以及循环之前),则分配一个新的随机数:

if($col==3){
  $next_ad_col = rand(0,2);
  ..

或类似的东西。