javascript – 只从mysql数据库获取最后一条记录

我被困在一个代码,我想从MySQL获取数据到一个数组..我有一个包含颜色和大小选择框的表单,一个onclick javascript函数被触发,它创建了两个以上的选择框,我已设法将数据放入javascript代码中,其中写入用于创建新选择框的代码.
但我只从两个表中获取最后插入的记录.虽然我使用了while循环.
有人可以帮助我,我也得到所有选择框的名称,如name =“color []”,我想将记录插入到包含颜色和大小的ID的桥表中.下面是我的代码请帮忙..

我将清除它,每次我点击添加更多按钮它应该创建2个新的下拉列表,一个用于颜色,第二个用于大小,两个下拉列表应该具有来自数据库的不同数据.所以每个记录的ID在每个下拉列表中都是相同的,我想在桥表中添加多于1个记录,其中包含product_id,color_id和size_id,所以如果我选择3个dropwdown框,我选择蓝色和小尺寸在第一个,然后第二个下拉列表我再次选择蓝色和大小介质,最后一个下拉列表也是由javascript函数生成的.我选择黑色和大尺寸.因此从下拉列表中它将获得大小,颜色的ID,并且它将相应地插入..所以当我显示产品并且颜色为蓝色时,我只会看到添加到蓝色时添加到蓝色的尺寸产品..我希望这清除一切:)

$result=mysql_query("SELECT * FROM color,size");
while($row=mysql_fetch_array($result)) {

    ?>


    <script>
        var room = 1;
        function add_fields() {
            room++;
            var objTo = document.getElementById('room_fileds')
            var divtest = document.createElement("div");
            divtest.innerHTML = '<div class="label">Room ' + room + ':</div><div class="content"><span>Color: <select name="color[]"><option value="<?php echo $row['color_id']; ?>"><?php echo $row['color']; ?></option></select></span><span>Size: <select><option value="<?php echo $row['size_id']; ?>"><?php echo $row['size']; ?></option></select></span></div>';

            objTo.appendChild(divtest)
        }
    </script>

<?php

}

HTML代码

<div id="room_fileds">
    <div>
        <div class='label'></div>
        <div class="content">
            <input type="button" class="btn btn-success" id="more_fields" onclick="add_fields();" value="Add More" /> <br /><br />

            <select name="color[]"  class="form-control">
                <option value="0">Select Color</option>
                <?php
                $result=mysql_query("SELECT * FROM color");
                while($row=mysql_fetch_array($result)){
                    ?>
                    <option value="<?php echo $row['color_id'] ?>"><?php echo $row['color']; ?></option>
                <?php } ?>
            </select>

            <select name="size[]"  class="form-control">
                <option value="0">Select Size</option>
                <?php
                $result=mysql_query("SELECT * FROM size");
                while($row=mysql_fetch_array($result)){
                    ?>
                    <option value="<?php echo $row['size_id'] ?>"><?php echo $row['size']; ?></option>
                <?php } ?>
            </select>


        </div>
    </div>
</div>
最佳答案
用以下内容替换您的第一个代码:

<script>

var colors = [];
var sizes = [];
var room = 1;
<?php
$result = mysql_query("SELECT * FROM color");
while ($row = mysql_fetch_array($result)) { ?>
    colors.push(['<?php echo $row['color_id'] ?>', '<?php echo $row['color'] ?>']);
<?php }
$result = mysql_query("SELECT * FROM size");
while ($row = mysql_fetch_array($result)) { ?>
    sizes.push(['<?php echo $row['size_id'] ?>', '<?php echo $row['size'] ?>']);
<?php } ?>

function add_fields() {
    room++;
    var objTo = document.getElementById('room_fileds');
    var divtest = document.createElement("div");
    var html = '<div class="label">Room ' + room + ':</div><div class="content"><span>Color: <select name="color[]" class="form-control">';
    for (i = 0; i < colors.length; i++) {
        html += '<option value="' + colors[i][0] + '">' + colors[i][1] + '</option>';
    }
    html += '</select></span><span>Size: <select name="size[]" class="form-control">';
    for (i = 0; i < sizes.length; i++) {
        html += '<option value="' + sizes[i][0] + '">' + sizes[i][1] + '</option>';
    }
    html += '</select></span></div>';
    divtest.innerHTML = html;
    objTo.appendChild(divtest);
    room++;
}

</script>

转载注明原文:javascript – 只从mysql数据库获取最后一条记录 - 代码日志