就像问题所说,我似乎无法在以下脚本中传递变量中的值。如果我回显该变量,它就会按预期存在。如果我将回显的值复制并粘贴到$ my_var所在的代码中,则可以正常工作。但它不能与$ my_var一起使用?!?!?
上下文代码需要另一个文件来创建pdf,将其附加到电子邮件并发送,然后在浏览器中显示。为简洁起见删除了大部分代码
$my_var = $_POST['quote_number'];
$filename = 'Quote_no' . $my_var . '.pdf';
$file = $_SERVER['DOCUMENT_ROOT'] . '/quotes/' . $filename ;
require('instant_quote.php');
function send_quote($my_var) {
//my_function code
};
send_quote($my_var);
header('Content-type: application/pdf');
header('Content-Disposition: inline; filename="' . $filename . '"');
header('Content-Transfer-Encoding: binary');
header('Content-Length: ' . filesize($file));
header('Accept-Ranges: bytes');
@readfile($file);
答案 0 :(得分:1)
您的示例中的语法突出显示很有帮助,您的匹配引号不正确:
$filename = "Quote_no' . $my_var . '.pdf";
......应该是:
$filename = 'Quote_no' . $my_var . '.pdf';
答案 1 :(得分:1)
不知道为什么会这样,但它确实......
header('Content-type: application/pdf');
header('Content-Disposition: inline; filename="' . $file . '"');
header('Content-Length: ' . filesize($filename));
@readfile($filename);
刚从标题中删除了传输编码和接受范围,它开始接受我的变量作为值... go figure