Php 如何实施";“保存”;具有使用cookie的动态内容的功能

Php 如何实施";“保存”;具有使用cookie的动态内容的功能,php,jquery,cookies,Php,Jquery,Cookies,我想实现一个“保存”功能,它允许我的用户保存我从数据库中提供给他们的特定条目。例如,如果他们看到自己喜欢的东西,他们可以按“保存”按钮,它将保存到“书签”页面 这是我的密码: <?php // Get all the data from the example table $result = mysql_query("SELECT * FROM table WHERE item <> 0 ORDER BY id") or die(mysql_error()); //

我想实现一个“保存”功能,它允许我的用户保存我从数据库中提供给他们的特定条目。例如,如果他们看到自己喜欢的东西,他们可以按“保存”按钮,它将保存到“书签”页面

这是我的密码:

<?php 

// Get all the data from the example table
$result = mysql_query("SELECT * FROM table WHERE item <> 0 ORDER BY id") 
or die(mysql_error());  

// keeps getting the next row until there are no more to get
$i = 10; 
while ($i > 0) {  
    $i--;
    $row = mysql_fetch_array( $result );
    if ($row['id'] != "" ) { 
?>

<!-- Some content in this div-->
<div class="content"> 
<img  src="<?php echo $row['logo']; ?>"/>
<?php echo $row['id']; ?>
</div>

<!-- This div will have the save icon that users can press --> 
<div class="save">
<img  src="images/saveIcon.png" />
</div>

<?php }} ?>

<div class="bookmarked"> 
Every single div that is labled as "content" that has been saved, will be displayed here. 
</div>

"/>
标记为“内容”且已保存的每个div都将显示在此处。

问题:我将如何实现一个功能,允许用户将SQL中的特定ID(动态创建的内容)添加到cookie变量中,以便以后可以复制它。

您可能希望使用PHP将其存储在会话中,而不是使用Javascript

只需将ID推入会话变量即可实现这一点:

<?php
session_start();
if(isset($_GET['id']) && is_numeric($_GET['id'])){    
    $_SESSION['bookmarks'][] = intval($_GET['id']);
}

如果我正确理解了您的问题,您需要一个按钮来标记相关的DIV,并将此关系存储到cookies

首先,我将把entry的id作为class添加到DIV中。然后您可以通过javascript轻松地获取id(用于进一步的实现)

要通过php设置收藏夹,应添加指向新php脚本的链接

在带书签的DIV中,您可以执行与上述相同的while循环,但请使用cookies中的值检查ID。您可以使用访问cookies。只需显示cookies中包含的项目


这是一种可能的实现方式。

对不起-请参见上面的说明。这个解决方案看起来很棒,谢谢-我简直不敢相信我没有想到它!:)。我只是在尝试实现它时遇到了一件事——如何在cookies中设置数组?我已经尝试过:$ridArray=array();setcookie(“ridArray”),$ridArray);但是它不起作用。我是否必须将数组转换为字符串,然后在每次使用它时再转换回来?还是有更简单的解决方案?我不确定,但我想您必须先序列化数组(),然后才能将其放入cookie中。