php - php 变量中的 Javascript 代码

标签 php javascript

我想将javascript代码放入php变量中,然后将其保存到mysql数据库中,然后在页面上回显它。我在将 javascript 代码保存到 php 变量并在页面上回显它时遇到问题。

我尝试以这种方式将 javascript 代码保存到 php 变量,但出现错误:

$parameter = "<script language='JavaScript'>document.write(geoip_country_name());</script>";

为了从数据库中回显此 JavaScript 代码,我想使用这种方式:

$parameterecho = htmlentities($parameter);
echo $parameterecho; 

是否有更好的解决方案将代码回显到页面以及如何将代码保存到 php 变量?

最佳答案

我认为你可以通过 AJAX 实现你想要的。这是一个使用 jQuery 的模型:

$.post(
        save_parameter.php,
        {
            parameter : geoip_country_name()
        });

file save_parameter.php
// save parameter to DB

$.get(
        get_parameter.php,
        function(parameter) {
            alert(parameter);
        }, 'html');

file get_parameter.php
// get $parameter from DB
// echo  $parameter
// exit;

更新:

您可以使用 jQuery 动态加载/运行 javascript,如下所示:

$.getScript("have_javascript_code.php");

终于:

但似乎您谈论的是保存/使用而不是 javascript 值。如果你真的想这样做,那没有问题。尽管我建议您重新考虑您的方法并利用前面的片段。

保存代码:

$parameter   = "<script language='JavaScript'>document.write(geoip_country_name());</script>";
$code        = htmlspecialchars($parameter, ENT_QUOTES);
// insert to DB

输出代码:

// get $code from DB
$code = htmlspecialchars_decode($code, ENT_QUOTES);
echo <<<EOF
<script type="text/javascript">
$code
</script>
EOF;

关于php - php 变量中的 Javascript 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14054552/

相关文章:

PHP - fsockopen() 超时而不是返回 false?

javascript - 当在我的 html 脚本标记上使用 async ='true' 来加载 socket.io.js 时,它会导致 io 对象出现未定义的错误,有什么建议吗?

javascript - 具有自动浏览器刷新 JavaScript 的响应式 FB 页面插件

javascript - 有人可以看一下我的简短 JavaScript 代码并了解为什么 Facebook Connect 无法工作吗?

php - 我如何创建多个请求获取/发布页面 url

php - 如何在 Windows 中运行 PHPUnit 测试?

php - 如何获得两个日期之间的星期日日期

php - 如何在sql上获取我以前的值?

javascript - 匹配 5pt 到 30pt 的正则表达式

javascript - 没有消息时如何隐藏Bootstrap警告框