在PHP中写入多个表

时间:2008-10-27 10:50:14

标签: php windows com adodb

$sql = "INSERT INTO images (path, useremail, approved, flagged,caption,date) VALUES ('$target','$email',0,0, '$caption','$b')";
$sql1 = "INSERT INTO users (name, email, phone) VALUES ('$peoplename','$email','$phone')"
$conn->execute($sql, $sql1);

以上是用于尝试写入2个表的代码。在通过COM对象引入连接之前,Ι可以做到这不是问题,但是现在由于某种原因不能做到这一点。任何帮助将不胜感激。

4 个答案:

答案 0 :(得分:5)

我认为第二个参数是用于传递要绑定到查询的参数。

如果服务器让你一次执行两个sql语句,这可能会有效。 (在每个查询的末尾添加了一个终止分号,并将两个查询连接在一起作为一个字符串。)

$sql = "INSERT INTO images (path, useremail, approved, flagged,caption,date) VALUES ('$target','$email',0,0, '$caption','$b');";
$sql1 = "INSERT INTO users (name, email, phone) VALUES ('$peoplename','$email','$phone');";
$conn->execute($sql . $sql1); 

否则显而易见

   $conn->execute($sql); 
   $conn->execute($sql1); 

答案 1 :(得分:0)

第二行上缺少分号。

答案 2 :(得分:0)

为什么不将它作为一个SQL语句?

$sql = "INSERT INTO images (path, useremail, approved, flagged,caption,date) VALUES ('$target','$email',0,0, '$caption','$b'); INSERT INTO users (name, email, phone) VALUES ('$peoplename','$email','$phone')";
$conn->execute($sql);

答案 3 :(得分:0)

Drew,我不是PHP大师,但我在其他答案中看到的一件事是事务完整性。即使将两个INSERT堆叠在用分号分隔的相同字符串中,也可以确保操作的原子性(如果这对您很重要: - )

希望这有帮助