Php 实时提要:Don';我不知道如何保存提交的内容
feed本身可以工作,但是它会随着时间的推移自动更新,当我提交一些内容时,它会刷新页面,而不会保存任何内容 jQuery代码:Php 实时提要:Don';我不知道如何保存提交的内容,php,javascript,jquery,ajax,Php,Javascript,Jquery,Ajax,feed本身可以工作,但是它会随着时间的推移自动更新,当我提交一些内容时,它会刷新页面,而不会保存任何内容 jQuery代码: jQuery(document).ready(function() { setInterval("showNewStories()", 5000); }); function showNewStories() { $.getJSON("post.php", null, function(data) { if (data != null)
jQuery(document).ready(function() {
setInterval("showNewStories()", 5000);
});
function showNewStories() {
$.getJSON("post.php", null, function(data) {
if (data != null) {
$("#stories").prepend($("<li><span class=\"story\">" +
data.story + "<br /><span class=\"date\">" + data.date +
"</span></li>").fadeIn("slow"));
}
});}
jQuery(文档).ready(函数(){
setInterval(“showNewStories()”,5000);
});
函数showNewStories(){
$.getJSON(“post.php”,null,函数(数据){
如果(数据!=null){
$(“#故事”)。前置($(“”+
data.story+“
”+data.date+
“ ”).fadeIn(“慢”);
}
});}
post.php:
<?php
echo json_encode(array( "story" => $_POST['dataS'],
"date" => date('l jS \of F Y h:i:s A')));
?>
我想知道的是,如何让它像Facebook的订阅源一样,你可以在订阅源中提交内容,并将其添加到订阅源中,然后即使你刷新,它也会保留在那里。你是如何在服务器上存储数据的?数据需要存储在某个地方,可能是一个数据库,以便于获取最新的数据。您如何将数据存储在服务器上?数据需要存储在某个地方,可能是一个数据库,以便于获取最新的数据。我不是php专家,因此我无法判断您是否已经这样做了,但服务器端的代码应该接受一个参数,该参数将告诉它加载帖子的日期 然后,在客户端的javascript中应该有一个变量,指示检索到的最新帖子的日期/时间。加载页面时,该值应为null 然后,调用
showNewStories
会将带有最后日期时间的变量发送到服务器。在服务器上,如果变量被传递到php页面,那么它将只返回发布日期时间大于发布日期/时间的帖子
然后,当您从服务器获得响应时,您可以将帖子添加到时间线中。添加最后一个时,将该日期时间存储为下次调用ShowNewStores
时传递给服务器的日期时间
这种逻辑存在一个漏洞,即如果服务器上的日期-时间分辨率不足以处理它接收到的帖子数量的频率,那么您可能会遇到一个问题,即在时间x
时发布帖子,您将检索到截至时间x
的列表,然后在时间x
接受另一个帖子。下次showNewStories
调用服务器时,您将错过在x
时发布的第二篇帖子
要做到这一点,您需要更改服务器上的逻辑,以包括任何post时间等于传入日期时间的post。您还将为每个传递回客户端的post返回一个唯一的id
然后,在客户端,当调用对
getJSON
的回调时,您将包括帖子的日期时间大于提交给服务器的时间或日期时间相等的任何项目,并且从服务器返回的帖子id不在列表中(我建议将帖子的id作为.我不是php专家,所以我无法判断您是否已经这样做了,但服务器端的代码应该接受一个参数,该参数将告诉它加载帖子的日期
然后,在客户端的javascript中应该有一个变量,指示检索到的最新帖子的日期/时间。加载页面时,该值应为null
然后,调用showNewStories
会将带有最后日期时间的变量发送到服务器。在服务器上,如果变量被传递到php页面,那么它将只返回发布日期时间大于发布日期/时间的帖子
然后,当您从服务器获得响应时,您可以将帖子添加到时间线中。添加最后一个时,将该日期时间存储为下次调用ShowNewStores
时传递给服务器的日期时间
这种逻辑存在一个漏洞,即如果服务器上的日期-时间分辨率不足以处理它接收到的帖子数量的频率,那么您可能会遇到一个问题,即在时间x
时发布帖子,您将检索到截至时间x
的列表,然后在时间x
接受另一个帖子。下次showNewStories
调用服务器时,您将错过在x
时发布的第二篇帖子
要做到这一点,您需要更改服务器上的逻辑,以包括任何post时间等于传入日期时间的post。您还将为每个传递回客户端的post返回一个唯一的id
然后,在客户端,当调用对
getJSON
的回调时,您将包括帖子的日期时间大于提交给服务器的时间或日期时间相等的任何项目,并且从服务器返回的帖子id不在列表中(我建议将帖子的id作为.我没有任何方法来存储数据,因为老实说,我不知道如何存储。除非您的应用程序只有一个用户,否则您将需要将数据存储在某个位置,以便在请求之间保存数据。存储数据的一种非常简单的方法是使用file\u put\u contents()
和serialize()
将PHP数据存储在磁盘上。我没有任何方法来存储数据,因为老实说,我不知道如何存储。除非你的应用程序只有一个用户,您需要将数据存储在某个位置,以便在请求之间持久化数据。存储数据的一种非常简单的方法是使用file\u put\u contents()
和serialize()
将PHP数据存储在磁盘上。