Javascript 通过AJAX将html数据从divs复制到MySQL数据库

Javascript 通过AJAX将html数据从divs复制到MySQL数据库,javascript,php,jquery,mysql,Javascript,Php,Jquery,Mysql,我有一些div是由网站用户通过PHP-MySQL创建的 我正在尝试创建一个复制函数,这样任何用户都可以查看其他用户的数据,并能够将其他数据“复制”到他们自己的配置文件中 下面是从我的数据库中打印的div的一个片段: (为了使这篇文章尽可能简单,我删除了SQL内容,因为这部分工作正常) echo'; 回声'; 回音“”;?>'; 回显“”。$title。 “”; 回显“”。$日期。 “”; 回显“名称:”。$Name。 “”; 回显“类别:”.$Category。 “”; 我不熟悉AJAX和jQ

我有一些div是由网站用户通过PHP-MySQL创建的

我正在尝试创建一个复制函数,这样任何用户都可以查看其他用户的数据,并能够将其他数据“复制”到他们自己的配置文件中

下面是从我的数据库中打印的div的一个片段: (为了使这篇文章尽可能简单,我删除了SQL内容,因为这部分工作正常)

echo';
回声';
回音“”;?>
'; 回显“”。$title。 “
”; 回显“”。$日期。 “
”; 回显“名称:”。$Name。 “
”; 回显“类别:”.$Category。 “
”;
我不熟悉AJAX和jQuery,我只能找到一些指南,所以我会反过来发帖;将数据从数据库获取到页面

我需要的是将站点上已经显示的数据复制到数据库中,作为新数据插入

这是我最好的尝试,但我知道这可能远远不正确。。但为了展示我已经尝试过的东西:

<script type="text/javascript">
function copytotimeline() {
    $(document).ready(function() {
        $('.profilecontainer .profilehover .date').each(function() {
            $(this).click(function(){
                var date = $(this).innerHTML();
                $.ajax({
                    type: "POST",
                    url: "copy.php",
                    data: { "date": date },
                    cache: false,
                    success: function(result){
                        $("#display").html(result);
                    }
                });

                return false;
            });
        });
    });
}

</script>

函数copytotimeline(){
$(文档).ready(函数(){
$('.profilecontainer.profilehover.date')。每个(函数(){
$(此)。单击(函数(){
var date=$(this.innerHTML();
$.ajax({
类型:“POST”,
url:“copy.php”,
数据:{“日期”:日期},
cache:false,
成功:功能(结果){
$(“#显示”).html(结果);
}
});
返回false;
});
});
});
}
上面的代码试图从div容器中获取“日期”信息。理想情况下,我希望容器中的所有内容、所有变量以及文件

我猜我应该在copy.php页面上执行sql insert查询

函数CopyDatetoProfile(mydiv){
var$this=$(mydiv);
var my_date=$this.html();
log('My Date:',My_Date);
//在这里,您可以编写您的ajax,我在脚本下面执行它
}

12-01-2019
13-01-2019
14-01-2019
15-01-2019
函数CopyDatetoProfile(mydiv){
var$this=$(mydiv);
var my_date=$this.html();
log('My Date:',My_Date);
//在这里,您可以编写您的ajax,我在脚本下面执行它
}

12-01-2019
13-01-2019
14-01-2019
15-01-2019

您的JS代码正在查找HTML元素ID
notecontainer
,但您发布的代码中不存在该ID。也许你的PHP代码中的
class=“profilecontainer”
实际上就是
id=“notecontainer”
。旁注:与其使用PHP重复一堆HTML,不如关闭PHP块
?>
,编写HTML,然后打开一个新的PHP块
@Dave我编辑过了,我错了!非常感谢。这个错误发生在我将它复制到创建这个SO帖子时,我决定更改名称,使我的帖子更容易理解。然而,在发布之前,我确实用正确的名称尝试了我的代码,但在HTML中它仍然是一个类,而不是一个ID。JS永远也找不到它。请复制/粘贴您的实际代码,不要进行任何重写。我们帮助您调试重写是毫无意义的,因为它可能(正如您刚才注意到的)引入新问题。您的JS代码正在查找HTML元素ID
notecontainer
,但您发布的代码中不存在该ID。也许你的PHP代码中的
class=“profilecontainer”
实际上就是
id=“notecontainer”
。旁注:与其使用PHP重复一堆HTML,不如关闭PHP块
?>
,编写HTML,然后打开一个新的PHP块
@Dave我编辑过了,我错了!非常感谢。这个错误发生在我将它复制到创建这个SO帖子时,我决定更改名称,使我的帖子更容易理解。然而,在发布之前,我确实用正确的名称尝试了我的代码,但在HTML中它仍然是一个类,而不是一个ID。JS永远也找不到它。请复制/粘贴您的实际代码,不要进行任何重写。我们帮你调试重写是毫无意义的,因为它会(就像你刚才注意到的)引入新问题。我尝试过实现它,效果非常好!但是,它仅适用于打印的第一个div。示例:如果有4个div。如果我点击div2-4,它们都会显示div1的值。div使用while循环打印。它们是由用户创建的。所以可能会有无限多的问题。@chao-Ans更新了,希望它能以您喜欢的方式工作。我在最后一个小时一直在尝试从您的示例中找出它,但没有任何运气。我的问题是,您的示例期望用户单击日期本身。但我希望单击容器内的链接并从容器内的其他div获取数据。这对你有意义吗?我感谢你的帮助!我终于找到了解决办法。我添加了一个:“each(function()”还添加了:var$this=$(this).find('.date');因为日期不是它的值,而是在容器中的另一个div中。我们正在传递对象“this”在函数中,因此我们不需要循环,如果要使用循环,则无需在函数中将对象作为param传递。我尝试实现了这一点,效果非常好!但是,它只在打印的第一个div上有效。例如:如果有4个div。如果单击div 2-4,它们都将显示div 1的值。div是pri使用while循环。它们是由用户创建的。因此可能会有无限。@chao Ans已更新,希望它能以您喜欢的方式工作。我一直在尝试从您的示例中找出它,但没有任何运气。我的问题是,您的示例期望用户单击日期本身。但我正在寻找在容器并从该容器中的其他div获取数据
<script type="text/javascript">
function copytotimeline() {
    $(document).ready(function() {
        $('.profilecontainer .profilehover .date').each(function() {
            $(this).click(function(){
                var date = $(this).innerHTML();
                $.ajax({
                    type: "POST",
                    url: "copy.php",
                    data: { "date": date },
                    cache: false,
                    success: function(result){
                        $("#display").html(result);
                    }
                });

                return false;
            });
        });
    });
}

</script>