Javascript 使用SQL查询中的PHP变量回显JS函数
我有存储在SQL表中的函数,需要在JS中使用。问题是,我还需要在这些函数中使用PHP变量 以下是:Javascript 使用SQL查询中的PHP变量回显JS函数,javascript,php,mysql,sql,Javascript,Php,Mysql,Sql,我有存储在SQL表中的函数,需要在JS中使用。问题是,我还需要在这些函数中使用PHP变量 以下是: <?php $container='11'; $title='Header'; $function_text = <<<EOT $(function() { $('#container$container').parent('div').find('h3').html('$title'); }); EOT; echo $f
<?php
$container='11';
$title='Header';
$function_text =
<<<EOT
$(function() {
$('#container$container').parent('div').find('h3').html('$title');
});
EOT;
echo $function_text;
?>
但是这个:
<?php
$ID=1;
$container='11';
$title='Header';
$article = $cls -> Query(sprintf('SELECT * from graphs WHERE ID="%s"', $ID));
$function_text = $article[0]['function'];
echo $function_text;
?>
如何将变量注入回显文本
$(function() {
$('#container$container').parent('div').find('h3').html('$title');
});
$(function() {
$('#container%s').parent('div').find('h3').html('%s');
});
$function\u text=sprintf($article[0]['function'],$container,$title);
$(function() {
$('#container$container').parent('div').find('h3').html('$title');
});
$(function() {
$('#container%s').parent('div').find('h3').html('%s');
});
$function\u text=sprintf($article[0]['function'],$container,$title);
谢谢,这很有效,从技术上回答了我的问题,但它不适合我的需要。存储在SQL中的代码实际上要长得多。(它实际上用于修改d3js图形,并使用了20多个变量,因此所有的%s-s对编辑器来说都会非常混乱,并且会扼杀灵活性。)在接受您的回答之前,我想知道是否有其他方法,以及为什么简单的回显不起作用。@Konservin:编辑器可以使用参数交换(数字)准确确定每次事件所指的变量。“简单回音”不起作用,因为PHP只解析变量的字符串文字(并且在那个时,只解析双引号或heredoc文字);它不会在
echo
时解析变量字符串。另一种选择可能是简单地搜索/替换$container
等,可能使用正则表达式,小心处理转义。使用eval()
可以更直接地满足您的要求,但在现实世界中太危险了,无法容忍。谢谢您,这是可行的,从技术上回答了我的问题,但它并不适合我的需要。存储在SQL中的代码实际上要长得多。(它实际上用于修改d3js图形,并使用了20多个变量,因此所有的%s-s对编辑器来说都会非常混乱,并且会扼杀灵活性。)在接受您的回答之前,我想知道是否有其他方法,以及为什么简单的回显不起作用。@Konservin:编辑器可以使用参数交换(数字)准确确定每次事件所指的变量。“简单回音”不起作用,因为PHP只解析变量的字符串文字(并且在那个时,只解析双引号或heredoc文字);它不会在echo
时解析变量字符串。另一种选择可能是简单地搜索/替换$container
等,可能使用正则表达式,小心处理转义。使用eval()。