Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Mysql-在插入另一个表之前检查表_Php_Mysql_Nested - Fatal编程技术网

Php Mysql-在插入另一个表之前检查表

Php Mysql-在插入另一个表之前检查表,php,mysql,nested,Php,Mysql,Nested,我想知道,管理员试图添加一个用户到一个集合实际上已经创建了该用户。 变量说明: $userid=要添加到集合的用户ID $ownerid=管理员用户ID $collectionid=应将用户添加到的collectionid 如果($userid in(从'users'中选择id,其中'owner'=$ownerid)),则插入到'collectionusers'中 ('collectionid','userid')值($collectionid,$userid) 如果我执行这个,它看起来是这样的

我想知道,管理员试图添加一个用户到一个集合实际上已经创建了该用户。 变量说明:

$userid=要添加到集合的用户ID

$ownerid=管理员用户ID

$collectionid=应将用户添加到的collectionid

如果($userid in(从'users'中选择id,其中'owner'=$ownerid)),则插入到'collectionusers'中 ('collectionid','userid')值($collectionid,$userid)

如果我执行这个,它看起来是这样的

如果是(8英寸(从“用户”中选择id,其中所有者=1)),则插入“collectionusers” ('collectionid','userid')值(3,8)

我看过:


我不知道这个语法有什么问题。

您可以使用一个查询来完成。例如:

INSERT INTO collectionusers(collectionid, userid)
  SELECT 3, 8 FROM users WHERE owner = 1 AND id = 8 LIMIT 1

此外,您还可以编写存储过程。

是否必须在一条SQL语句中完成所有工作?不一定。这是为了更干净的代码。更干净什么?一个目的不明显的查询比两个单独的简单操作更干净?