我在PHP中传递一个查询变量。我想把它作为表名,但我知道可能存在SQL语法错误。当我打印语句时,传递变量意味着它可以工作,但是数据库根本就没有创建。
以下是我创建数据库的代码:
$DBName = "database_name";
$sql = "CREATE TABLE '$DBName'.'$login' (
ClientID int NOT NULL AUTO_INCREMENT,
AgentClients varchar(15),
ClientTotal int
)";
mysql_query($sql,$link);
where `$login = $_POST['login'];
另外,我现在并不担心安全漏洞,所以不用担心。
非常感谢任何见解。
答案 0 :(得分:6)
您必须使用反引号作为您的表名,而不是引号:
$sql = "CREATE TABLE `$DBName`.`$login` (
ClientID int NOT NULL AUTO_INCREMENT,
AgentClients varchar(15),
ClientTotal int,
PRIMARY KEY (`ClientID`)
)";