我想将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/