我在我的应用程序中编写了一个小内容系统。 这将根据表中的数据呈现一些文本和图表。 我还把sql语句放在这个表中。 在运行时,render claas从选项卡中获取格式化信息和sql语句,并在页面中呈现它。到目前为止工作得很好。
为了保持灵活性,我还需要将一些php变量带入sql语句。 这个规范是完成的,如下所示:
select * from table1 where userid = ".$actual_user." and ...
select * from table1 where userid = '.$actual_user.' and ...
select * from table1 where userid = $actual_user and ...
但是当我从mysql表加载sql语句时,这不起作用,因为php认为所有文本和php都不认识在运行时用实际值替换变量。 我希望我的意思是可以理解的。 (英语不是我的母语)
长话短说,我该怎么办,php在运行时在从mysql表加载的sql语句中替换注入的变量。
提前感谢您的帮助。
答案 0 :(得分:0)
如果您的问题是如何将变量添加到SQL查询中。
$sql="select * from table1 where userid = ".$actual_user." and ...
OR
$sql='select * from table1 where userid = '.$actual_user.' and ...
请注意,您开头的符号必须以(即'或")结束,然后"。"然后添加变量。
答案 1 :(得分:0)
如果我这样做
$ sql5 =“select * from table1 where userid =”。$ actual_user
这将没有问题。但是,如果我将相同的sql语句放入一个表并在运行时加载它(ew_ExecuteScalar继续sql脚本并返回kpi_show_sql1的内容(这实际上是我们的sql语句select * from table1 where userid =“。$ actual_user))like这样:
$ sql5 = ew_ExecuteScalar('SELECT kpi_show_sql1 FROM kpi_template WHERE kpi_id =” $ ROW_ID)
比它不起作用。对我来说,它看起来像php不知道在文本中是一个php需要继续的变量(并在运行时填充真正的价值)。
所以我的问题更多的是如何从表中加载带有变量的sql语句,并以php识别并将变量进入的方式继续进行。