Php 自动创建div';使用jQuery和从mysql插入数据

Php 自动创建div';使用jQuery和从mysql插入数据,php,jquery,mysql,Php,Jquery,Mysql,我想用jQuery自动创建div。我必须用MySql数据库中的数据填充它们。问题是,当我使用foreach循环时,它不想回显数据 以下是我的mysql代码: $sql = "SELECT * FROM `post` ORDER BY `id` DESC"; $result = mysqli_query($con, $sql); $row = mysqli_num_rows($result); 这是我的jQuery代码: $(document).ready(function(){

我想用jQuery自动创建div。我必须用MySql数据库中的数据填充它们。问题是,当我使用foreach循环时,它不想回显数据

以下是我的mysql代码:

$sql = "SELECT * FROM `post` ORDER BY `id` DESC";
$result = mysqli_query($con, $sql);
$row = mysqli_num_rows($result); 
这是我的jQuery代码:

$(document).ready(function(){
        var count = 1;
            for(i = <?php echo $row; ?>; i > 0; i--){
                $("#main").prepend('<div id="first'+count+'"></div>'); 
                count++;
            }
            count = 1;
            for(i = <?php echo $row; ?>; i > 0; i--){
                <?php
                    while($col = mysqli_fetch_assoc($result))
                        {
                            $cols[] = $col;
                        }
                    foreach($cols as $col){
                ?>
                $("#first"+count+"").text("<?php echo $col['post']; ?>");
                count++;
                <?php } ?>
            }
    });
$(文档).ready(函数(){
var计数=1;
对于(i=;i>0;i--){
$(“#main”)。前缀(“”);
计数++;
}
计数=1;
对于(i=;i>0;i--){
$(“#first”+count+”)。文本(“”);
计数++;
}
});
我还签入了inspect元素,看起来一切正常,但它不想创建div

如果我改变这个echo$col['post']对于其他文本,它是有效的

以下是我在inspect element中得到的信息:

$(document).ready(function(){
        var count = 1;
            for(i = 3; i > 0; i--){
                $("#main").prepend('<div id="first'+count+'"></div>'); 
                count++;
            }
            count = 1;
            for(i = 3; i > 0; i--){
                                    $("#first"+count+"").text("text1");
                count++;
                                    $("#first"+count+"").text("text2");
                count++;
                                    $("#first"+count+"").text("text3");
                count++;
                                }
    });
$(文档).ready(函数(){
var计数=1;
对于(i=3;i>0;i--){
$(“#main”)。前缀(“”);
计数++;
}
计数=1;
对于(i=3;i>0;i--){
$(“#first”+count+”).text(“text1”);
计数++;
$(“#first”+count+”).text(“text2”);
计数++;
$(“#first”+count+”).text(“text3”);
计数++;
}
});

谢谢你的建议

我在我的工作站上运行你的代码,它工作正常

  • 我可以建议你们检查一下你们新创建的div的重复id,你们可以在课堂上修改它们,也许不会有冲突
  • 在页面加载之前绑定了#main div
  • 检查数据库的数据插入是否正常 这只是一些建议。如果你能说一些关于这个场景的具体细节,那么我可以给你一些具体的建议


    谢谢

    在第一次运行中,我会减少循环的数量,你有一个
    for
    循环,在其中有一个
    while
    循环,然后是一个
    foreach
    循环,一个循环就足够了,例如一个
    while
    循环,它将遍历结果耶,谢谢你的建议,但没有所有的3个循环,它不会像我想要的那样工作。谢谢你的建议。。。我在localhost上尝试了这段代码,但没有成功。。。然后我将相同的代码转移到我的域中,它工作得非常好。我不知道为什么会这样,但它按照我的要求工作。无论如何谢谢你