我在下面有一个变量(storecode),它从用户的输入中得到它的值(120)
<script>
function getClientViewTemplate(data) {
var template = kendo.template($('#clientViewTemplate').html());
var result = template({ text: data });
return result;
}
</script>
在PL / SQL Developer中工作的sql是$storecode = $_POST['storecode'];
;
我试图将$ storecode变量替换为&#34; 120&#34;然后连接&#34; 081&#34;所以我有:
Select mydate from tbl_store@rm_database.p120081
显然以上是错误的,需要一些指导来解决这个问题
答案 0 :(得分:1)
您可以创建一个新的变量table_name,并将连接的databasename.tablename添加到该变量,如
var table_name = 'tbl_store@rm_database.p'.$storecode.'081'
然后在您的查询中,您可以将此变量用作
"SELECT mydate from ".$table_name;
我不是php开发人员这只是因为我根据我的PHP基本知识共享代码,所以你需要解决语法错误。
答案 1 :(得分:0)
表达式中的单引号被添加到表名中,假设为$storecode = 120
,此语句为:
"SELECT mydate from tbl_store@rm_database.p'$storecode'081";
...导致文字表名为tbl_store@rm_database.p'120'081
您可以按照其他答案中的建议进行连接;但是,您可以在知识variable parsing的情况下在字符串定义中获得相同的结果(在Variable Parsing部分下查找Simple Syntax)。
"SELECT mydate from tbl_store@rm_database.p{$storecode}081";
如果遇到美元符号($),解析器将贪婪地获取尽可能多的令牌以形成有效的变量名称。将变量名括在花括号中,以明确指定名称的结尾。
如果没有大括号,解析器会尝试引用变量$storecode081
。
所以你原来是正确的,你只需要括号语法而不是单引号。