0

我在 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'];

另外,我目前并不担心安全漏洞,所以不用担心。

任何见解将不胜感激。

4

1 回答 1

6

您必须为您的表名使用反引号,而不是引号:

$sql = "CREATE TABLE `$DBName`.`$login` (  
  ClientID int NOT NULL AUTO_INCREMENT,   
  AgentClients varchar(15),  
  ClientTotal int,
  PRIMARY KEY (`ClientID`) 
)";
于 2012-10-29T19:26:30.147 回答