PHP:在mySQL数据库中插入两行不起作用。这段代码有什么问题?

时间:2014-01-06 04:21:03

标签: php mysql sql

我试图在一个查询中将两行插入两个不同的列,这些列属于一个数据库。

$consultaModifica="INSERT into zona(zona1,zona2,zona3)
VALUES('$z1','$z2','$z3');
INSERT into ubicacgeo(geoA,geoB,geoC,geoD)
VALUES('$gA','$gB','$gC');
";

它不适用于两个cols。现在这个确实有效:

$consultaModifica="INSERT into zona(zona1,zona2,zona3)
VALUES('$z1','$z2','$z3')
";

我试过了;在完成VALUES()之后,并且没有使用它,结果相同:它不会告诉我任何错误,但它不会在数据库中插入任何内容。

那么,问题是如何将多个值插入多个列? cols是MyISAM类型。

我在SO中已经阅读了一些答案,但是没有找到任何与MyISAM数据库有效的方法。

2 个答案:

答案 0 :(得分:1)

您为2个不同的表运行2次插入查询,因此您需要像这样执行2次查询

<?php
$consultaModifica=mysql_query("INSERT into zona(zona1,zona2,zona3)
VALUES('$z1','$z2','$z3')");

$consultaModifica2 = mysql_query("INSERT into ubicacgeo(geoA,geoB,geoC,geoD)
VALUES('$gA','$gB','$gC','')");

?>

答案 1 :(得分:1)

PHP无法像您在问题中那样输入两个不同的查询。您需要将这些命令分解为两个单独的mysql_query命令才能生效。

$result1 = mysql_query($query1);
$result2 = mysql_query($query2);

如果两者都是同一张表,你可以将它们合并......但是你不能这样。