每行带有动态组合框的php动态表
我有一个问题与动态表的动态组合框的每一行 基本上,发生的是mysql中所有的信息都被提取出来了 在表意义上运行良好但与组合框的 问题是,表格的第一行正是我想要的组合框和表格 但是下面的行不是,它们只在 组合框不是3,所以我想它不会处理while循环 我想知道是否有人能解决这个问题每行带有动态组合框的php动态表,php,mysql,Php,Mysql,我有一个问题与动态表的动态组合框的每一行 基本上,发生的是mysql中所有的信息都被提取出来了 在表意义上运行良好但与组合框的 问题是,表格的第一行正是我想要的组合框和表格 但是下面的行不是,它们只在 组合框不是3,所以我想它不会处理while循环 我想知道是否有人能解决这个问题 //Check to see if a driver has been assigned $driver = $row["driver"]; if($driver==""){ $select_driver =
//Check to see if a driver has been assigned
$driver = $row["driver"];
if($driver==""){
$select_driver = 'Select Driver' ;
} else{
$select_driver = $driver;
}
echo ' <tr><td><select name= "stuff"><option value="'.$select_driver.'">'. $select_driver;
while ($row_driver = mysql_fetch_array($dbSearchDriver_result)){
echo '<option value="'.$row_driver["Username"] .'">'.$row_driver["Username"] .'</option>'; //Echo's each driver
}
echo '</option></select></td>';
提前感谢看起来您正在反复使用相同的$dbSearchDriver\u结果 这是一个记录集,因此每次执行以下操作时:
$row_driver = mysql_fetch_array($dbSearchDriver_result)
它在记录集中前进一条记录。当您到达记录集的末尾时,它不会返回到第一条记录。你必须明确地告诉他
您可以尝试:
while ($row_driver = mysql_fetch_array($dbSearchDriver_result)) {
echo ''.$row_driver["Username"] .''; //Echo's each driver
}
mysql_data_seek($dbSearchDriver_result,0);
问题是:您必须关闭此行中的选项标记:
echo ' <tr><td><select name= "stuff"><option value="'.$select_driver.'">'. $select_driver;
您应该在选择驱动程序之后关闭标记,而不是在while循环之后关闭标记。首先,与数据库相关的内容应该放在一个地方。html代码以外的任何代码 步骤1:创建如下函数: 函数查询\u mysql$SQL\u查询{
$data = array();
$result = mysql_query($SQL_QUERY);
while ($row_driver = mysql_fetch_array($result)) {
$data[] = $row_driver;
}
返回$data
}
在需要时将函数放入要包含的php文件中
$myData=query\u mysqlSELECT*FROM表//你的问题
$myData将是一个数组,您可以随时使用它。
只要在需要时解析它
PS:了解MVCmodel视图控制器和关注点分离