尝试向%s
添加返回标记:
$createQuery = sprintf("CREATE TABLE `%s` (message_ID INT NOT NULL AUTO_INCREMENT, message TEXT, sender TEXT, recipient TEXT, PRIMARY KEY( message_ID )) ENGINE=MyISAM;",$tablename);
$createResult = mysqli_query($connect, $createQuery);
此外,您的原始代码旁边有%s
,位于括号(
旁边。技术上有后退,这应该不是问题,但你应该养成在处理MySQL查询时在事物之间添加空格的习惯。
也就是说,只需将sprintf()
直接放入代码中,您也可以在没有$tablename
的情况下获得相同的结果,因为双引号允许字符串替换:
$createQuery = "CREATE TABLE `$tablename` (message_ID INT NOT NULL AUTO_INCREMENT, message TEXT, sender TEXT, recipient TEXT, PRIMARY KEY( message_ID )) ENGINE=MyISAM;";
$createResult = mysqli_query($connect, $createQuery);