在表名中动态插入数据


Dynamically insert data in a table name

我正在创建一个评分系统,我需要一些帮助。

我正在创建一个注册表单,我已经设法在'users'表中插入用户详细信息,但我还想在组表中插入用户ID和用户名。

例如:

$sql = ("INSERT INTO `users`(`username`, `password`, `email`, `group`, `ip`, `signup`, `lastlogin`) VALUES ('$username','$email','$password','$group','$ip',now(),now())");
        $query = mysqli_query($db_conx, $sql); 
        $uid = mysqli_insert_id($db_conx);
        // Establish their row in the group table
        $sql = ("INSERT INTO '.$group.'(id, username) VALUES ('$uid','$username')");
        $query = mysqli_query($db_conx, $sql);
        exit();

我不确定如何将动态变量($group)作为表名,然后将数据插入正确的组表中。

如果有人有一个建议或现在如何实现这一点,任何反馈将非常感谢。

"INSERT INTO '.$group.'(id, username) VALUES ('$uid','$username')"

你用点和撇号包围了$group——撇号不会分割字符串。

"INSERT INTO `$group` (id, username) VALUES ('$uid','$username')"

-注意引号

你是说这样吗?

"INSERT INTO '$table' (username,password) VALUES ('$username','$password')"
但是,我建议您使用预处理语句。http://php.net/manual/en/pdo.prepared-statements.php

首先用您想要的名称创建表

$sql = ("CREATE TABLE `".$group."` (id,username);");
$query = mysqli_query($db_conx, $sql);
$sql = ("INSERT INTO `".$group."` (id, username) VALUES ('".$uid."','".$username."')");
$query = mysqli_query($db_conx, $sql);

希望这对你有帮助!

可以了

mysql_query("INSERT INTO '.$group. ")"(id、用户名)值("uid"美元,美元的用户名)");