将变量从php传递到js?或者更好的方法


Passing variable from php to js? or a better approach?

你好,我正在尝试获得第三方livehelp,以便在登录时自动填充joomla用户名和电子邮件。

这是自动填充的js代码:
LHCChatOptionsPage.attr_prefill = new Array();
LHCChatOptionsPage.attr_prefill.push({'name':'email','value':'test@email.com'});
LHCChatOptionsPage.attr_prefill.push({'name':'username','value':'Username here'});

这是从joomla获取变量的php代码:

$user =& JFactory::getUser();
$user_name = $user->name; 
$user_email = $user->email;

但是我如何将php变量传递给js?或者我应该采取更好的方法?

任何帮助将非常感激!

您可以在渲染页面时通过php回显变量,就像:

<?php $user =& JFactory::getUser(); ?>
<script>
  ..
  LHCChatOptionsPage.attr_prefill.push({'name':'username','value':'<?php echo $user->name; ?>'});
  ..
</script>

或者你可以通过ajax获得你想要的变量,在这种情况下,你需要一个PHP API来提供你想要的

最好的方法是将密钥对存储在会话或cookie中,然后尝试在js代码中通过AJAX调用访问它们。这将意味着一个干净和标准的代码。