我正在开展一个项目,一切都在临时测试网站上工作。今天,我将所有内容迁移到新主机(justhost.com),出于某种原因,在PHP中调用setcookie
函数时,没有设置cookie。我查了多个浏览器,没有任何作用。
以下是我正在使用的setcookie函数的示例:
setcookie("blah", $login_email, $time, $path);
如果相关,$path
只是"/"
。除了数据库详细信息之外,代码在我转移时完全没有变化。但是,我无法理解为什么没有设置cookie。
我可能需要更改主机中的任何设置吗?我差不多了。
更新:我能够通过回显一些jQuery来设置cookie。但我仍然想知道为什么PHP方法不起作用。
更新:我解决了这个问题。我的身体标签中有代码,因为它的一部分也输出了一些信息。我更改了它,以便我可以将setcookie
函数移动到html标记之上。问题是一些主机首先发送标头,然后一旦其他数据(如正文)开始加载就不发送标头。我后来也遇到了类似的问题,这次是由空格引起的。我在<?php
之前的php脚本顶部发表了评论,删除了这个补救了另一个问题。包含的函数文件中的最后一个问题需要使用ob_start()
和ob_flush()
来处理。