回答
cron作业将无法访问cookie,因为根据定义,它不会从web浏览器请求中调用。只有Web浏览器存储一个包含会话ID的cookie。没有网页浏览器,没有cookie,没有会话。
说了这么多,如果你做知道会话ID不知何故,你应该能够通过喂食ID手动启动会话为session_id()
使用session_start()
之前。
只有当会话仍然存在时。运行一个cron作业,比如说,几小时或几天后,可能会尝试加载不再存在的会话。 – 2009-11-09 07:08:19
非常感谢你的答案。我喜欢。 – 2017-12-18 16:12:39
有一个名为pseudo cron的项目,我想可以访问会话和/或cookie。但这对我来说没有意义。
不是。通过根据实际请求运行,它可以从请求该页面的人员那个时刻“看到”cookie,而不是来自您正在运行cron-job的人员的cookie。 这里也适用同样的限制@deceze cite。您需要事先知道* session_id *并使用它开始会话。除非你不能使用cron,否则他们使伪cron不是一个好选择。 – 2009-11-09 07:46:30
是的,你是对的。但是我认为这是相关的,因为这个问题没有提到哪个特定的会话可以访问。但是,如果你想访问一个已知会话ID的会话,来自deceze的答案将是准确的。 – 2009-11-09 08:27:32
另一个答案是,可以使用命令行Web客户端的会话cookie文件。 例如:
C=~/tmp/x
WGET="wget --keep-session-cookies --load-cookies=$C --save-cookies=$C"
1.获得登录页面
$WGET -O index.html "http://mail.yahoo.com"
2.捞出任何隐藏值
HIDDENVARS=`cat index.html | tr '\r\n\t' ' ' | tr -s ' ' | sed "s|> *<|>~<|g" | tr '~' '\n' | \
grep -i "<input .*hidden" | sed "s|.*name=\"\([^\"]*\)\".*value=\"\([^\"]*\)\".*$|\1=\2|g" | tr '\n' '&'`
3手动添加非隐藏瓦尔
FORMVARS = “.persistent = y & login = USERNAME & passwd = SE CRET “
4.交形状数据发送到目标
$ WGET -O的login.html --post数据= ”$ {HIDDENVARS} & $ {FORMVARS}“” https://开头登录。 yahoo.com/config/login?”
5.利润;)
基于时间的,服务器端的 “cookie” 到cron作业中运行:
使用file()来读取服务器端的 “曲奇” - 一个文本文件。
使用fopen,fwrite,fclose写入服务器端的“cookie”。
使用内爆,如果在你的“饼干”中存储多于datavalue:
主要代码:
<?php
$username = 'whatever';
$usercookie = 'http://yourdomainname.com/cookiebank/'.$username.'cookie.txt';
$oldtime = file($usercookie);
if(is_array($oldtime)) {
$cookievalue = implode(" ",$oldtime);
}
else {
$cookievalue = $oldtime;
}
// $cookievalue can then be used as you wish...
$newtime = date("M j G:i:s");
$newtime = strtotime($newtime)*1000; // current time in msec
$myfile = fopen($usercookie, "w") or die("Unable to open file!");
fwrite($myfile, $newtime);
fclose($myfile);
echo 'done';
?>
直接从荒地鲁宾逊的心灵的一种方法 - 不是很优雅,但它的工作原理如果您想将类似cookie的行为应用于cron作业。
- 1. PHP会话变量不可访问
- 2. ASP.NET MVC3会话变量不可访问
- 3. 访问会话变量8
- 4. 可以从@Page访问会话变量,但不能从基础类访问会话变量
- 5. 使用cron作业“访问页面”
- 6. cron作业PHP
- 7. 我可以在我的PHP cron作业中使用Laravel吗?
- 8. 无法在cookie上访问会话变量减少PHP会话
- 9. 会话变量问题php
- 10. PHP - 会话变量问题
- 11. php会话和cookies
- 12. 编写一个可以访问用户数据的Cron作业
- 13. Coffeescript可以访问SASS变量吗?
- 14. 黑客可以设置PHP会话变量吗?
- 15. 可以使用jQuery会话变量吗?调用一个php
- 16. 会话cookies = cookies?
- 17. PHP和Cron作业
- 18. 无法调用访问会话变量
- 19. 用会话cookies卷曲吗?
- 20. php变量会话变量
- 21. Cron作业PHP脚本不会运行
- 22. ASP.NET:访问会话变量global.asax
- 23. Codeigniter cron作业问题
- 24. 如何禁用cookies时访问php会话?
- 25. 清除cookies时,PHP会话变量消失
- 26. PHP会话变量
- 27. Php - 会话变量
- 28. PHP会话变量
- 29. php会话变量
- 30. 我可以在Eclipse中作为变量访问Maven属性吗?
你应该真的指定了这种访问需要的用例。 – 2009-11-09 07:35:25