问题描述
我正在尝试使用axios将一些变量发送到PHP文件,该文件使用mpdf使用页面上显示的某些数据生成PDF。我的axios.get看起来像这样:
axios.get('generatepdf.PHP',{
params: {
a: jsVariable1,b: jsVariable2,c: jsVariable3,d: jsVariable4,e: jsVariable5,f: jsVariable6
}
});
<?PHP
require_once __DIR__ . '/vendor/autoload.PHP';
// grab variables from JS
$a= $_GET['a'];
$b= $_GET['b'];
$c= $_GET['c'];
$d= $_GET['d'];
$e= $_GET['e'];
$f= $_GET['f'];
// create new PDF instance
$mpdf = new \Mpdf\Mpdf();
$data = '';
$data .= '<strong>a:</strong> ' . $a . '<br>';
$data .= '<strong>b:</strong> ' . $b . '<br>';
$data .= '<strong>c:</strong> ' . $c . '<br>';
$data .= '<strong>d:</strong> ' . $d . '<br>';
$data .= '<strong>e:</strong> ' . $e . '<br>';
$data .= '<strong>f:</strong> ' . $f . '<br>';
// write PDF
$mpdf->WriteHTML($data);
// output to browser
$mpdf->Output('file.pdf','D');
exit;
?>
我正在JavaScript的HTML中使用onclick事件。之前我已经使用Vue使它工作,但是我不确定我在做什么错。这里的目标是使用来自我的JavaScript的数据生成PDF。
解决方法
抱歉,让这样一个旧线程复活了,但这是我的第一个 Vue.js 和 PHP 项目,我试图弄清楚如何让事情工作。我早就完成了。
我不确定我提供了足够的信息来完全允许其他人提出解决方案(我使用 Vue.js 和数据成员),但我的 jsVariables 是类成员而不是变量。问题是我忘记了 this
关键字。
params: {
a: this.classMember1,b: this.classMember2,c: this.classMember3,d: this.classMember4,e: this.classMember5,f: this.classMember6
}
指定 this
非常重要,因为它与类的数据成员而非非类变量相关。