我想做一些类似的事情
$tagNo = 12345;
mysql_query("var = SELECT `jobNo` FROM `Jobs` WHERE `tagNo`='".$tagNo."';
INSERT INTO `Locations` (`jobNo`,`tagNo`,`name`) VALUES (var, '".$tagNo."', 'blah')");
这能做到吗?
你不能这样分配变量,但你可以使用INSERT...SELECT
语法来实现你想要的:
mysql_query("INSERT INTO `Locations` (`jobNo`, `tagNo`, `name`)
SELECT `jobNo`, '".$tagNo."', 'blah' FROM `Jobs` WHERE `tagNo`='".$tagNo."'");
但是,正如评论中所解释的,不要在新代码中使用mysql_*函数。
您必须先获取查询,然后插入所需的值。或使用insert。。选择statment。
你可以试试这个
$tagNo = '12345';
$var = mysql_query("SELECT `jobNo` FROM `Jobs` WHERE `tagNo`='".$tagNo."' ");
$row = mysql_fetch_array($var) ;
mysql_query("INSERT INTO `Locations` (`jobNo`,`tagNo`,`name`)
VALUES ('".$row['jobNo']."' , '".$tagNo."', 'blah')");
但是使用mysql是一个非常糟糕的主意,而是使用PDO或MYSQLI