我正在尝试创建一个表,其名称是变量中存储的值的值$name.我尝试了很多不同的方法,但似乎没有一个适合我.这是我目前使用的代码:
mysql_connect("localhost", "peltdyou_admin", "123456") or die(mysql_error());
mysql_select_db("peltdyou_orders") or die(mysql_error());
mysql_query("CREATE TABLE '" .$_POST['name']. "' ( name VARCHAR(30), age INT, car VARCHAR(30))");
Run Code Online (Sandbox Code Playgroud)
我知道这与某些事情有关,'" .$_POST['name']. "'但我无法解决问题.我已经尝试'$name'了它从代码中进一步获得它的价值.
任何帮助都会很棒!
在表名周围使用反引号,而不是引号.逃避输入!此外,虽然这适用于localhost,但请确保在生产服务器上运行的用户具有CREATE表的权限(当然,通常不是,AFAIK,在共享主机上).
一句警告:你真的确定要在用户输入上创建一个表吗?你要以这种方式创建多少个表?难道你不能只重新设计整个事物,以便插入值吗?
$name = mysql_real_escape_string($_POST['name']);
mysql_query("CREATE TABLE `".$name."` ( name VARCHAR(30), age INT, car VARCHAR(30))");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14454 次 |
| 最近记录: |