通过php从数据库上传数据

通过php从数据库上传数据,php,jquery,Php,Jquery,问题是将公告作为div元素上载。我试图通过jQuery实现这一点,但我对jQuery知之甚少,因此无法找到解决方案。我确实通过PHP找到了一个可行的解决方案,但是它不是很优雅,我觉得有更好的方法可以做到这一点 以下是代码(announcements.php): 您的解决方案没有问题。另一种方法是使用检索数据,并使用Javascript将其附加到DOM中 使用PHP的原因: 并非所有浏览器都支持Javascript,您可以关闭Javascript 始终保持数据的一致输出 使用AJAX的原因:

问题是将公告作为div元素上载。我试图通过jQuery实现这一点,但我对jQuery知之甚少,因此无法找到解决方案。我确实通过PHP找到了一个可行的解决方案,但是它不是很优雅,我觉得有更好的方法可以做到这一点

以下是代码(announcements.php):


您的解决方案没有问题。另一种方法是使用检索数据,并使用Javascript将其附加到DOM中

使用PHP的原因:

  • 并非所有浏览器都支持Javascript,您可以关闭Javascript
  • 始终保持数据的一致输出
使用AJAX的原因:

  • 如果希望在不刷新页面的情况下向页面添加新数据。例如。:
    • “单击此处加载”按钮加载内容而不刷新页面
    • 每隔一段时间自动向页面添加新内容(如Facebook的新闻提要)
    • 以相同的方式删除或编辑数据

注意:我在代码中看到的唯一错误是,在循环中定义了一个ID为
announcementContent
的元素-HTML规范只允许DOM中有一个ID实例。您应该在此处使用一个类,该类用于(可能)一个元素的多个实例。

我可以看到,您正在使用特定的类创建嵌套标记,标记并在它们之间显示数据。这可以通过jquery实现,也可以通过创建标记、向标记添加类并将其附加到层次结构中各自的父级来实现

var x =  $("<div></div>").addClass("className");

$("#parentDiv").append(x);
var x=$(“”)。addClass(“className”);
$(“#parentDiv”)。附加(x);
对于从服务器获取数据,AJAX调用始终是一个更好的选择,它是一个异步调用(可以更改)


关于AJAX调用,请阅读此处

我不同意您关于适用性的评论。另外,您的jquery有误导性,选择器和文本内容是非常不同的东西$(“text”).addClass(“className”);它是…,我正在选择器中添加标签,但我不知道为什么我看不到它…@scrowler,请在这里解释适用点。从数据库中获取数据的任何更好的选项。?为您编辑代码显示-代码应缩进四个空格,而不是引用行,它们是
。您关于数据库检索适用性的评论-没有什么比直接从数据库获取数据并使用服务器端语言显示更合适的了。Ajax不应该在不必要的地方使用,所以如果我使用Ajax调用,每次都必须从特定的div追加。我该怎么做呢?
<div id="somediv">
    <?php include("announcements.php"); ?>
</div>
var x =  $("<div></div>").addClass("className");

$("#parentDiv").append(x);