我正在尝试将数据从数据库中提取到选择框中

时间:2014-01-03 18:23:09

标签: javascript php

我正在尝试将数据从数据库中提取到选择框中,但是当数据被拉出时,它会进入一个“td”而不是单独的td。我正在努力实现如下所示的结果

enter image description here


但我一直得到这个结果

enter image description here


这是我的代码


<?php
$data_array = array();
$result2 = mysql_query("SELECT * FROM `firefightersonscene` 
                        JOIN `firefighterinfo` ON `firefightersonscene`.`FireFighterInfo_fighterID` = `firefighterinfo`.`fighterID` 
                        JOIN `stationlocation` ON `firefighterinfo`.`StationLocation_locationID`=`stationlocation`.`locationID` 
                        WHERE `IncidenceOfFire_incidentID`='$getIncID' ORDER BY `firstName`");

if(mysql_num_rows($result2) > 0)
{    
    while($rows2 = mysql_fetch_object($result2))
    {
        $data_array[] = $rows2;
    }   
}
?>
<form action="core_viewfireoccurrence.php?incidentID=<?php echo $rows->incidentID; ?>" method="post" class="view_occurrence_form">
<table id="myTable">
            <thead>
                <tr>
                </tr>
            </thead>
            <tbody>
                <tr>
                    <td class="count">1</td>
                    <td>
                            <?php 
                            foreach($data_array as $rows2):
                            $fighterID = $rows2->FireFighterInfo_fighterID; 
                            $results = mysql_query("SELECT `fighterID`, `firstName`, `middleName`, `lastName`, `stationlocation`.`exactlocation` 
                                                    FROM `firefighterinfo` 
                                                    JOIN `stationlocation` ON `firefighterinfo`.`StationLocation_locationID`=`stationlocation`.`locationID` ORDER BY `firstName`");               
                            echo '<select name="fireman[]" required><option value=""></option>';
                            while($row = mysql_fetch_array($results))
                            {
                                if($row['fighterID'] == $fighterID)
                                    echo '<option selected>'. $row['firstName']." ".$row['middleName']." ".$row['lastName'].", ".$row['exactlocation'].'</option>';
                                else
                                    echo '<option>'. $row['firstName']." ".$row['middleName']." ".$row['lastName'].", ".$row['exactlocation'].'</option>';

                            }// end while
                            echo '</select><br>';
                        endforeach;
                        ?> 
                    </td>
                    <td>
                        <input type="button" value="X" class="removeVar"/>
                    </td>
                </tr>
            </tbody>
            <tfoot>
                <tr>
                    <td>
                        <input type="button" id="addVar" value="Add Item"/>
                </tr>
            </tfoot>
            </table>
</form>

JS CODE


<script type="text/javascript">
    $('form').on('click', '.removeVar', function(){
    $(this).closest('tr').remove();
    $('.count').each(function(i){
      $(this).text(i + 1);
    });
});

//add a new node
$('#addVar').on('click', function(){
    var varCount = $('#myTable tr').length - 1;
    $node = ['<tr>',
    '<td class="count">'+varCount+'</td>',
    '<td><select name="fireman[]" class="ctlGroup" required>',
      '<option value=""></option>',
      '<?php require("php/fireman_list.php"); ?>',
    '</select></td>',
    '<td><input type="button" value="X" class="removeVar"/>',
    '</td></tr>'].join('\n');
    $('#myTable > tbody:last').append($node);
});
</script>

1 个答案:

答案 0 :(得分:2)

您需要将整个表格行放在循环中。您还需要添加一个变量来为您计算行号。

<?php 
$row =1;
foreach($data_array as $rows2):
?>
<tr>
    <td class="count"><?php echo $row; ?></td>
    <td>
        <?php    
             $fighterID = $rows2->FireFighterInfo_fighterID; 
            $results = mysql_query("SELECT `fighterID`, `firstName`, `middleName`, `lastName`, `stationlocation`.`exactlocation` 
                                    FROM `firefighterinfo` 
                                    JOIN `stationlocation` ON `firefighterinfo`.`StationLocation_locationID`=`stationlocation`.`locationID` ORDER BY `firstName`");               
            echo '<select name="fireman[]" required><option value=""></option>';
            while($row = mysql_fetch_array($results))
            {
                if($row['fighterID'] == $fighterID)
                    echo '<option selected>'. $row['firstName']." ".$row['middleName']." ".$row['lastName'].", ".$row['exactlocation'].'</option>';
                else
                    echo '<option>'. $row['firstName']." ".$row['middleName']." ".$row['lastName'].", ".$row['exactlocation'].'</option>';

            }// end while
            echo '</select><br>';

        ?> 
    </td>
    <td>
        <input type="button" value="X" class="removeVar"/>
    </td>
</tr>
<?php
    $row++;
    endforeach;
?>