在 cookie 中存储数组

2023-12-13

我需要在 cookie 中存储一些数组数据,我一直在研究最好的方法来做到这一点,很多人似乎说使用serialize是要走的路,但在这个线程中:

PHP如何字符串化数组并存储在cookie中

..有人建议不要使用它,因为“序列化将调用序列化类的构造函数。这很糟糕,因为它可能会导致代码执行。”

所以我想知道我还有什么其他选择?关于什么base64_encode?

我不能使用sessions因为我需要在浏览器关闭后保留数据;虽然我也担心Cookies4KB limit.

FWIW 我正在存储某人购物车中存储的购物车数据,当他们回来时需要将其重新加载到他们的购物车中。


如何生成一个唯一的 ID,将其存储在 cookie 中,并将序列化数组和 ID 存储在数据库中?

Example:

// ------------ STORING TO COOKIE AND DATABASE ------------ //
$id = uniqid();
setcookie("id", $id, time()+60*60*24); // 1 day

$serialized = serialize($array);
mysql_query("INSERT INTO yourTable (id, array) VALUES ('$id', '$serialized')");


// ------------ SELECTING FROM DATABASE ------------ //
if(!isset($_COOKIE['id'])) die();
$id = mysql_real_escape_string($_COOKIE['id']);

$result = mysql_query("SELECT array FROM yourTable WHERE id = $id LIMIT 1");
if(!is_resource($result)) die();
$serialized = mysql_result($result, 0);
$array = unserialize($serialized);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 cookie 中存储数组 的相关文章

  • 使用“manage_pages”权限创建页面访问令牌时收到警告

    当我尝试获取具有 manage pages 权限的 page access 令牌时 我收到以下警告 以下权限尚未批准使用 manage pages 如果您公开您的应用程序 它们将不会向使用您应用程序的人显示 提交它们以供审核或了解更多信息
  • 如何覆盖 suhosin 最大值?

    suhosin 正在过滤一个重要的 GET 参数 当以下方法不起作用时 如何覆盖 suhosin public html php ini suhosin suhosin get max value length 2048 将 suhosin
  • 我可以从匿名 PL/SQL 块向 PHP 返回值吗?

    我正在使用 PHP 和 OCI8 执行匿名 Oracle PL SQL 代码块 有没有什么方法可以让我绑定一个变量并在块完成后获取其输出 就像我以类似的方式调用存储过程时一样 SQL declare something varchar2 I
  • Oracle/PHP - ORA-00911 更新时的无效字符

    我正在运行一个 PHP 脚本 该脚本从 Oracle 数据库实例更新表 首先 我收到一个 JSON 对象 lot KLMHA17N9N00 requestor B10078 id FRESHLOT username B26696 passw
  • Lua表在内存中是如何处理的?

    lua如何处理表的增长 是否相当于ArrayList在Java中 IE 需要连续的内存空间 并且当它变得大于已经分配的空间时 内部数组被复制到另一个内存空间 有什么聪明的方法来引导吗 我的问题是 表是如何存储在内存中的 我不是问如何在 Lu
  • PHP:file_get_contents 与 json_decode 不能一起工作

    使用 file get contents 读取 json 文件后遇到问题 当我运行这段代码时 它工作正常
  • 登录代码示例已通过 SQL 注入被黑客攻击,尽管 mysql_real_escape_string...

    我使用 CodeIgniter 但在黑客攻击方面遇到了麻烦 是否可以对以下登录代码进行 SQL 注入 function process login username mysql real escape string this gt inpu
  • 如何将字节数组转换为图像 [kotlin]

    我想将字节数组转换为图像并在图像视图中显示它 但不知道该怎么做 有人可以指导我吗 我使用这个函数将位图转换为字节数组 private fun BitmapToByteArray ByteArray val stream ByteArrayO
  • Blueimp jQuery 文件上传,传递额外的表单数据

    我可以使用一些帮助 我已经设法使 blueimp jQuery 文件上传为我工作 但我仍然绝对是一个新手 我对 jQuery 等知之甚少 所以请尝试将其清晰明了地提供给我尽可能简单 我会尝试具体一点 好的 我想实现的是人们可以上传照片 并为
  • FOSUserBundle & REST Api 调用:如何使用自定义 FormType?

    我在我的 Symfony2 网站上使用 FOSUserBundle 现在我正在开发一个 API 以允许通过 REST API 调用进行注册 我已经覆盖了 FOSUserBundle 的 RegistrationController ApiR
  • 在 PHP 中使用 file_get_contents 进行 PUT 请求的错误请求

    这个 api 调用使用 Postman REST 客户端 可以正常工作 但是当我的 GAE 应用程序中的服务器上发出请求时 我当前收到以下错误 HTTP 请求失败 在 C Projects app file php 第 26 行 打开流失败
  • 如何使用表单上的提交按钮传递参数

    我想创建一个可以更改 PHP 制作的 mySQL 中的产品数据的程序 我有自动递增并指定每个产品的键列 当我单击编辑产品链接时 它将传递我从每个产品获得的键值 并链接到 editPage php Key data Key a href ed
  • PHP - 发送带有附件的电子邮件不显示消息内容

    尝试创建一个脚本 我可以在其中发送带有附件的电子邮件 一切正常 除了当我不在电子邮件中添加文件时 我仍然可以看到带有 0B 且没有名称的附件 if isset POST my send email to POST my email to r
  • 如何获取数组中最后 5 个元素(不包括第一个元素)?

    在 JavaScript 数组中 如何获取最后 5 个元素 排除第一个元素 1 55 77 88 would return 55 77 88 添加其他示例 1 55 77 88 99 22 33 44 would return 88 99
  • 如何在 Jersey RESTful Web 服务中放置 cookie?

    我想通过 Jersey API 将 cookie 从 PUT webservice result 放置到 POST webservice 这是我的代码 WebResource service1 client resource http te
  • 为 SimpleXMLElements 数组编写 foreach 循环

    我正在使用 PHP 5 中的 XPath 来解析 XML 文档 我遇到的问题是写一个foreach正确显示以下数组 XML 文档示例 值1 值2 xmlfile link to file xml xmlRaw file get conten
  • 从 CodeIgniter 中的 URL 捕获哈希值 (#)

    我有一个看起来像的网址 mysite com transactions view 123456 效果很好 但是我的客户现在希望在 url 中包含 hashbang mysite com transactions view 123456 现在
  • PHP 与 .= 相反

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 有谁知道是
  • PHP邮件功能有时可以工作

    我正在编写一个脚本 需要通过PHP邮件功能发送电子邮件 如下所示 它在向 gmail 帐户发送电子邮件时有效 但在我的域中的帐户却无效 我们正在运行 Exchange 服务器 截至目前 电子邮件是从 www server 发送的 有谁知道
  • 如何以 Magento 方式实现库存过滤器?

    在我的 magento 网站上可以看到缺货的产品 我想要在分层导航中添加一个自定义过滤器 其中显示 排除缺货 当客户单击它时 应该隐藏缺货产品 默认情况下 我在 系统 gt 配置 gt 目录 gt 库存 下启用显示 显示缺货产品 即我希望客

随机推荐

  • PHP 脚本不会在后台运行

    我正在尝试在后台运行 php CLI 脚本 但它无法运行 它的状态为 已停止 SIGTOU 尝试写入输出 以下是详细信息 Mac OS X Lion 10 7 2 PHP 5 3 6 与 Suhosin Patch cli 构建时间 201
  • 为什么我的 CodeIgniter 表单验证不起作用?

    我正在尝试在使用表单助手创建的简单联系表单上设置验证 根本不会发生任何验证 怎么了 在下面的代码中 无论在表单中输入什么内容 good 关键字始终显示 并且从不显示通过 set value 设置的保存值 控制器 Contact functi
  • CasperJS 不能要求下划线

    我在用着CasperJS运行自动化前端测试 但在我的测试中使用其他 npm 模块时遇到了问题 我知道patchRequire但是我相信这只能在测试环境之外调用 因为测试运行程序补丁会自动需要 我确实包含了它 但结果是一样的 它说找不到该模块
  • 更改 JavaScript Prompt() 显示的格式和文本?

    我正在使用 JavaScriptprompt 功能 var favorite prompt What is your favorite color RED 我使用的是 IE 7 打开的提示框有一个标题栏 上面写着 资源管理器用户提示 还有更
  • constexpr 与 const 对比 constexpr const

    变量上的 const 与 constexpr 这家伙关于 constexpr 的说法是正确的if double被使用 或float当然 但是 如果您将 var 类型更改为double对于像 int char 等整数类型 一切正常 为什么会发
  • C#调用WinApi?

    我正在尝试调用 WinAPI 函数DeviceIoControl在 C 中使用代码IOCTL DISK SET DISK ATTRIBUTES并传递结构SET DISK ATTRIBUTES 我正在尝试用这段代码来做到这一点 const u
  • 如何将 setup.py 替换为 pyproject.toml 以获取本机 C 构建依赖项?

    我碰到this用于创建 C 编译版本的小项目布莱克 斯科尔斯python 中要使用的函数 虽然示例代码似乎是今年7月发布的 但似乎使用setup py旧版构建之外的构建类型已被弃用 任何编译失败 先抱怨缺失MS C 14编译器 这不是真的
  • NSString 反斜杠转义

    我正在开发一个 iPhone OS 应用程序 该应用程序向 Web 服务发送 xml 请求 为了发送请求 xml 被添加到 NSString 中 这样做时我遇到了一些引号问题 和反斜杠 在 xml 文件中 需要转义 是否有需要转义的字符的完
  • R 中的 Bootstrap 置信区间

    我是 R 新用户 在使用启动包时遇到问题 我想要做的就是使用 bootstrapping 来生成围绕数字向量均值的置信区间 例如 x lt rnorm 100 1 5 有小费吗 以下还不够吗 library boot x lt rnorm
  • 了解 rowwise() 和 c_across()

    您好 任何人都可以提供外行人的解释 为什么这两种尝试计算分数的行平均值的方法效果不同 谢谢 library tidyverse var1 lt rnorm 100 var2 lt rnorm 100 var3 lt rnorm 100 df
  • 如果 URL 包含特定字符串,则 htaccess 重定向

    我该如何写一个 htaccess如果 URL 包含某个单词 则重定向规则 例如如果它包含foobar然后重定向到index php RewriteCond REQUEST URI foobar RewriteRule index php o
  • 如何写入 Python 子进程的标准输入?

    我正在尝试编写一个启动子进程并写入子进程标准输入的Python 脚本 我还希望能够确定子进程崩溃时要采取的操作 我试图启动的进程是一个名为nuke它有自己的内置 Python 版本 我希望能够向其提交命令 然后在命令执行后告诉它退出 到目前
  • 如何在 Java 中创建唯一 ID? [复制]

    这个问题在这里已经有答案了 我正在寻找在 Java 中创建唯一 ID 作为字符串的最佳方法 任何指导表示赞赏 谢谢 我应该提到我正在使用 Java 5 创建一个UUID String uniqueID UUID randomUUID toS
  • Chrome 调试器 Api 附加扩展错误

    Task 使用调试其他扩展Chrome 调试器 API 预期输出 其他已安装扩展发出的 http 请求日志 Method 在 python 设置标志中使用 selenium 运行 chrome webdriverchromeopts add
  • 如何使用 VBScript 从驱动器号获取硬盘号

    如何使用 VBScript 从驱动器号获取硬盘号 先感谢您 Remou 关于 WMI 的看法是正确的 只是需要让它变得更混乱一点 如果有更简单 更好的方法来执行此操作 一点也不会感到惊讶 但此脚本至少应该为您提供一个良好的起点来完成您需要的
  • 使用安全登录进行 PHP 网站抓取

    我正在尝试减少我的一位经销商的每种产品的库存数量 他们不知道如何导出这些数据 所以我想知道是否有人可以帮助我指明如何使用 PHP 抓取必须登录才能获取数据的网站的正确方向 它不是一个使用 SSL 的安全站点 感谢您的任何提示 克里斯 爱德华
  • C 中是否有 strtoull() 函数的替代方案?

    我需要转换char to unsigned long long int有一个函数叫做strtoull in the C标准库 但需要很多时间 我需要在之间快速转换char to unsigned long long int 如何编写比标准转
  • 日期列中的 Kendo 网格格式时间问题[重复]

    这个问题在这里已经有答案了 我有一个剑道网格 它有一个日期列 我想在那里显示日期和时间 我在列定义中使用以下格式 format 0 dd MMM yyyy hh mm ss tt 在模态中我使用了日期类型Updated Date type
  • UnsupportedAudioFileException 的解决方法?

    我正处于用 Java 编写小型音乐 节奏游戏的早期阶段 通过 Slick 框架 该框架又使用 OpenAL 但这可能与这里无关 游戏需要读取 并播放 多个 WAV 格式的声音文件 但某些文件抛出 javax sound sampled Un
  • 在 cookie 中存储数组

    我需要在 cookie 中存储一些数组数据 我一直在研究最好的方法来做到这一点 很多人似乎说使用serialize是要走的路 但在这个线程中 PHP如何字符串化数组并存储在cookie中 有人建议不要使用它 因为 序列化将调用序列化类的构造