1

想知道是否有人可以帮助我解决一个小问题。当我的用户像这样登录到我的 php 站点时,我存储了会话值<?php echo $_SESSION['SecurityID_ContactName']; ?>

我可以在整个站点中重复使用这些值来显示登录的用户名,但是我现在需要将此值存储在创建表单的外部 js 文件中。这会将登录的用户名放在提交回mysql的表单字段中吗?

js 文件中的表单具有如下字段:

        form += '<label>Name</label>';
        form += '<input type="text" id="author" placeholder="Your name" />';

我编辑这个来举行会议:

        form += '<label>Name</label>';
        form += '<input type="text" id="author" value="<?php echo $_SESSION['SecurityAssist_ContactFullName']; ?>  />'";

这不起作用,没有真正的错误,因为它只是从 php 页面中删除了整个 js 脚本?我可以将会话值存储在 js 文件中吗?

亲切的问候

4

2 回答 2

2

您仍然可以将其存储在 HTML 中,例如标签的data-属性中。body

<body data-username="<?php echo $_SESSION['SecurityAssist_ContactFullName']; ?>">

您可以使用 Javascript 查询它,getAttribute()例如:

var userName = document.body.getAttribute('data-username');
...
form += '<input type="text" id="author" value="' + userName + '";

这是一个小演示

对于跨浏览器支持,您还可以使用jQueryattr()data())或检查这个问题


另一个(IMO 不太干净)解决方案是将您的 Javascript 文件重命名为.php. 在这种情况下,网络服务器将运行它,因此您可以在其中使用 PHP 命令。在这种情况下,您应该发送适当的标头 ( Content-type: text/javascript)。

于 2012-04-11T08:24:34.140 回答
0

您只是引用错误的顺序;将其更改为:

form += '<input type="text" id="author" value="<?php echo $_SESSION['SecurityAssist_ContactFullName']; ?>" />';
于 2012-04-11T08:37:19.137 回答