首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >wkhtmltopdf会话无效

wkhtmltopdf会话无效
EN

Stack Overflow用户
提问于 2015-01-27 23:26:04
回答 1查看 1.7K关注 0票数 1

当我进行php调用:exec(“./wkhtmltopdf 64 google.com google.pdf")时,我可以生成google的pdf。

我需要创建一个pdf的我的网站,但是,内容是依赖于会话。因此php命令:exec(“./wkhtmltopdf 64 myprofile.php profile.pdf")将生成一个不具有与浏览器相同内容的pdf文件。

经过一些研究,我发现了一个示例,其中有人将会话id作为wkhtmltopdf命令的一部分传递。下面是我的命令: exec("./wkhtmltopdf-amd64 64-cookie sessionid $sessionID myprofile.php profile.pdf");

$sessionID是php命令session_id()的结果;

不生成PDF文件。有人知道我做错了什么吗?如何使wkthmltopdf使用与浏览器相同的会话数据?

EN

回答 1

Stack Overflow用户

发布于 2016-05-24 12:25:46

使用$_COOKIE传递$_SESSION数据:在传递$_SESSION变量的页面中,将其转换为选择任何set变量COOKIESESSION的变量,因为wkhtmltopdf只能访问COOKIE而不是。

代码语言:javascript
复制
$sessionID = $_SESSION['sessionid'];

做:

代码语言:javascript
复制
$sessionID = $_SESSION['sessionid'] || $_COOKIE['sessionid'];

或:

代码语言:javascript
复制
$sessionID = !isset($_SESSION['sessionid']) ? $_COOKIE['sessionid'] : $_SESSION['sessionid'];

然后,在generate函数中,传递如下所示:

代码语言:javascript
复制
wkhtmltopdf --post BYPASS yes --cookie sessionid $sessionID ...

请注意,$_SESSION的键与$_COOKIE的键以及传递给$_COOKIE的-cookie参数相同。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28181925

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档