我正在尝试找出在div
内存储动态加载的html的最佳方式,以便用户下次访问。
我已经阅读了一些关于localStorage
的内容,并且可能会对此信息进行字符串化,但是,我对实现情况并不十分清楚。
然而,如上所述,这就是我目前所做的以及我想要完成的事情。
我使用的代码如下:
$(function() {
$('.cordpass').click(function() {
var collection = $(this).find('span').load(this.href + ' #cords');
$('#summary').append( $(collection) );
return false;
});
});
这实际上是从其他网页抓取信息并将其添加到ID为div
的{{1}}。这可以从页面上的多个对象完成(它们都在地图上)。无论如何,用户可以排序和各种东西。这对我的需求很有用。但是,我想将HTML保存在#summary
中,以便下次用户访问时,HTML就在那里。
最好的方法是什么? #summary
是否适合我,或者我完全误解了它的使用,还有另一种方法可以存储HTML以供下次访问吗?
答案 0 :(得分:0)
我认为如果每个用户的数据不同,您可以将数据存储在mysql数据库中。如果数据来自另一个页面,您只需将链接存储到数据库中的其他页面,而不是所有数据。
页面上的每个用户在数据库中都有不同的ID,因此他们只能看到他们的数据。假设您有某种登录程序。
目前还没有足够的信息来提供更好的答案。
好的我会加入这个。您当然可以使用cookie在客户端存储信息。当然,每个cookie的cookie限制为4k。听起来不多,但这是4000个字符的文字。就像我说你不想在很多文本中使用cookie一样,但是可以存储一些链接和变量。
设置cookie执行此操作
setcookie($cookiename, $cookie_value, time() + (86400 * 30), "/"); // 86400 = 1 day
这是30天,但如果您真的想要,可以使有效期限无限制。 要回复cookie,请执行此操作
echo $_COOKIE['cookiename'];
您也可以将数组存储在cookie中。
$test = array(
0 => array('bill', 'ted'),
1 => array('alpha', 'romeo'),
2 => array('Chad', 'Something')
);
setcookie('names', $test);
但是,如果用户登录,我仍然建议将他们的数据存储在mysql数据库中。
也可能有其他方法。请记住,cookie仅存在于打开它们的浏览器中。因此,如果您在一个浏览器中查看该页面然后更改浏览器,那么cookie就不会存在。或者,如果他们从另一台机器访问。
如果用户有登录信息,那么机器访问您的信息页并不重要。