技術者以外の人がチケットのテキストとレイアウトを変更できるように、自己印刷可能なチケットを作成するための単純なASP.Netページを作成しました。明らかに、ユーザーはチケットを印刷できるようにログインする必要があります。
変換するwkhtmltopdfのURLを指定する場合、wkhtmltopdfにはユーザーがログインしていることを証明するセッションがないため、チケットは作成されません。
URLでwkhtmltopdfにセッションを渡すことは可能ですか、それともより良い解決策ですか?
技術者以外の人がチケットのテキストとレイアウトを変更できるように、自己印刷可能なチケットを作成するための単純なASP.Netページを作成しました。明らかに、ユーザーはチケットを印刷できるようにログインする必要があります。
変換するwkhtmltopdfのURLを指定する場合、wkhtmltopdfにはユーザーがログインしていることを証明するセッションがないため、チケットは作成されません。
URLでwkhtmltopdfにセッションを渡すことは可能ですか、それともより良い解決策ですか?
はい、URLを介してセッションを渡すことができますが、それは一種の不要です。
通常、次のようなことを行います。
含まれます:
<ul>
<li>
<a href="ticket.php?ticket=1">Ticket 1</a>
</li><li>
<a href="ticket.php?ticket=2">Ticket 2</a>
</li><li>
<a href="ticket.php?ticket=N">Ticket N</a>
</li>
</ul>
そしてticket.php
:
<?php
if( User->logged_in() ){
$temp='C:\\windows\\temp\\tmp123546.html';
file_put_contents($temp,'ticket html stuff');
shell_exec('wkhtmltopdf.exe file:///'.str_replace('\\','/',$temp));
}
?>
注: ASPでこれについて質問されたことは知っていますが、あまりよくわかりません。ただし、上記の情報は、ASP、PHP、Ruby、Pythonなど、すべてのWebベースのソフトウェアに当てはまるはずです。