我有一个用于订购不同产品的网络表单。表单后面的逻辑(DB连接等)是用PHP编写的。现在,我想通过Google Analytics跟踪提交的表单。
只有一种形式,访问者可以通过复选框选择要订购的产品。由于这是可变的,我不能简单地用onClick-Event调用GA函数。我的解决方案是将有效复选框写入$ _POST ['order'],然后通过JavaScript提取该数据以填充函数ga('send', 'event',...)
的参数,如下所示:var ordertype = <?php echo $_POST['order']; ?>;
虽然确实有效,但每当打开页面而没有填充Post-Data时,我的JS看起来像var ordertype = ;
,它确实在控制台上产生错误(当然) 。使用var ordertype = <?php echo if(isset( $_POST['order']); ?>;
之类的东西也不起作用,因为它不会输出任何内容。
关于如何更优雅地做到这一点的任何想法?
答案 0 :(得分:1)
只需将var ordertype =
放入您的回音中:
<?php if(isset($_POST['order'])){
echo 'var ordertype = ' . $_POST['order'] . ';'
}?>
这样,如果未设置ordertype
,则根本不会定义$_POST['order']
。如果您希望将其设置为其他值,只需添加else
子句。
答案 1 :(得分:0)
使用此解决方法:
var ordertype = ''+<?php echo if(isset( $_POST['order']); ?>;
这样,如果post值不存在,变量ordertype
将为空字符串,稍后,您可以为其分配更新值,因为它已在上面声明。