MySql PHP选择下拉列表

时间:2015-09-17 14:32:40

标签: php html mysql drop-down-menu

我有以下代码

echo '<table class="bookings">';
while($row = mysql_fetch_array($result)){

//set variables for events
    $id = $row['CourseDateID'];
    $begin = $row['CourseStartDate'];
    $end = $row['CourseEndDate'];
    $title = $row['CourseTitle'];
    $att = $row['Attendees'];
    $venue = $row['CourseLocation'];
    $formatted = date('Y-m-d', strtotime($begin));

    echo '<tr>';
    echo '<td>' . $formatted . '</td>';
    echo '<td>' . $title . '</td>';
    echo '<td>' . '<select>' . '<option>' . $att . '</option>' . '</select>' . '</td>';
    echo ' ' . '<td>' . '<a href="/cal.php?id=' . $id . '&begin=' . $begin . '&end=' . $end . '&title=' . $title . '&att=' . $att . '&venue=' . $venue . '">Add Bookings to Calendar</a>' . '</td>';
    echo '</tr>';
}
    echo '</table>';

我希望<select>将与会者列为下拉列表,但是它会创建一个<select>框,其中包含所有与会者姓名而不是下拉列表。

希望这是有道理的。

2 个答案:

答案 0 :(得分:0)

假设与会者值是CSV列表,例如John,Fred,Jane,Mary,你必须把它分解成一个数组并在其上循环:

while($row = ...) {
    ... start table row+select
    $names = explode(',', $row['Attendees']);
    foreach($names as $name) {
        echo "<option>$name</option>"
    }
    ... end select + table row
}

答案 1 :(得分:0)

你肯定需要至少一个循环结构,只是一个建议,jQuery也是一个很好的方式,特别是如果你需要动态地为每个与会者提供每个id。