我有一个PHP脚本,我可以在其中注册新闻用户。 当然我想插入像用户名,密码等(这些值来自用户),但另一方面,我想插入他的user_id(新用户!)到另一个表中。在不同的表中插入多个插入新的AI
我的SQL
$sql = "
BEGIN;
INSERT INTO users (username, password, auth_lvl, realname, usercolor) VALUES ('$username', '$password', '$auth_lvl', '$realname', '$usercolor');
INSERT INTO users_startmodules (user_id, startmodule, enabled) VALUES ('(SELECT MAX(user_id)+1 FROM users)', 'newsmodule', '1');
COMMIT;
";
我该如何解决这个问题,是BEGIN; ... COMIT;
正确的选择时,我想,如果只有一两件事没有工作查询取消了,因为我不想让在最坏的情况下只有几个条目。
无论你做什么,将用户提供的数据直接插入数据库并不是最好的想法。我建议使用MySQLi或PDO和准备好的语句。我不是MySQLi自己的formilliar,但是对于PDO,它是使用'beginTransaction()'/'endTransaction()' – icecub