PHP下拉菜单

I am doing a select on the database and some time it returns me 10 records and sometimes 1000, depending on the criteria of search. What I want is a drop down that will have break after every 30 records. something like this

<select id="dd" >
  <option value="0">1-30</option>
  <option value="30">31-60</option>
  <option value="60">61-90</option>
  <option value="91">91-120</option>
</select>

How do I do that in PHP dynamically?

Here's my take on it:

echo '<select id="dd">';
$j = 0;
for($i=0;$i<$numResults;$i++)
{
    if($i%30==0)
        echo '<option value="'.$j.'">'.($j+1).'-'.($j+=30).'</option>';     
}
echo '</select>';

for $numResults == 130 output would be:

<select id="dd">
    <option value="0">1-30</option>
    <option value="30">31-60</option>
    <option value="60">61-90</option>
    <option value="90">91-120</option>
    <option value="120">121-150</option>
</select>

Maybe something along the lines of this:

<select id="dd" >
    <?php
    $rows = mysql_num_rows($result);
    for($count=0;$count<$rows;$count++)
    {
        if($count % 30 == 0)
        {
            $end = $count+30;
            if($end > $rows)
                $end = $rows;
            echo '<option value="'.$count.'">'.$count.'-'.$end.'</option>';
        }
    }
    ?>
</select>

This is untested.

Try this :)

<select id="dd" >
<?php
      $start = 0;
      $end = mysql_num_rows($resultquery);
    while ( ($start+30) < $end || ($end-$start)>0)
       echo "<option value=\"". $start . "\">". $start ."-" . ($start+=30) . "</option>";        
?>
</select>

if $end = 95; output will be:

<select id="dd" >
<option value="0">0-30</option>
<option value="30">30-60</option>
<option value="60">60-90</option>
<option value="90">90-120</option>
</select>