gpt4 book ai didi

PHP PDO SQLite3 转换日期字符串

转载 作者:行者123 更新时间:2023-12-03 18:18:06 26 4
gpt4 key购买 nike

仅在 localhost 上使用 SQLite3、PDO 和 PHP5。

我正在使用网页表来显示列、样本集(表中的 1 条记录)、用于选择列的复选框以及用于为后续查询选择修改器的下拉列表。
在单击“获取查询”按钮时,简单查询..

SELECT day FROM tbl;

..变成..
SELECT datetime([day],'unixepoch','+978307200 seconds','localtime') as day FROM tbl;

(这是通过字符串替换功能完成的)

然后通过 cookie 将其传递到结果页面(使用 cookie,因为我还传递了许多其他数据)

现在,此查询会将所有这些秒数添加到转换后的 unix 纪元时间,并放弃本地时间的结果...(与 UTC 相比)

如果我将查询直接硬编码到“results.php”页面中,它可以正常工作。如果该页面使用存储在前一页设置的 cookie 中的查询,我将得不到任何结果。检查结果页面元素,我可以看到 cookie 已设置完整的查询。

我已将范围缩小到 "+978307200"修改器...因为没有它,它工作正常(除了 978307200 秒不平衡!)

我认为“+”号发生了一些事情,但完全不知道如何修复它。

有什么想法/建议吗?
谢谢。

最佳答案

在 URL 和 cookie 中,sing 是空格的占位符,$_COOKIES数组包含已解析的 cookie header ,因此每个加号都会更改为空格。

如果您确实必须在页面之间传递此类数据,请使用 session 。

如果由于某种原因 session 不是一个选项,您将不得不将您的值编码为仅包含“安全”字符,然后再将它们存储到 cookie 中,然后在使用之前对其进行解码。最受欢迎的是base64_职能

关于PHP PDO SQLite3 转换日期字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13207486/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com