Php 嵌套插入到两个表中
我有下面的代码。我用post从另一个页面获取了一些变量。然后我运行查询并将它们存储到表Php 嵌套插入到两个表中,php,mysql,sql,Php,Mysql,Sql,我有下面的代码。我用post从另一个页面获取了一些变量。然后我运行查询并将它们存储到表materials。然后我为该表选择以获取materialsid,然后我想使用insert into将materialsid的值存储在另一个名为material\u的表中 <?php session_start(); if(isset($_POST['submit'])) { include('dbConfig.php'); $mname1=$_P
materials
。然后我为该表选择以获取materialsid
,然后我想使用insert into
将materialsid
的值存储在另一个名为material\u的表中
<?php
session_start();
if(isset($_POST['submit'])) {
include('dbConfig.php');
$mname1=$_POST['name1'];
$mcost1=$_POST['cost1'];
$mquantity=$_POST['quantity'];
$res=mysql_query("INSERT INTO materials VALUES (NULL, '$mname1', '$mcost1','$mquantity')");
if ($res)
{
echo "Insert successful";
}
else
{
echo "Insert failed";
}
$res1=mysql_query("SELECT * FROM materials");
while ($row = mysql_fetch_array ($res1))
{
$id10=$row['materialsid'];
$id11=(int)$id10;
$res2=mysql_query("INSERT INTO damage_materials (damage_materials_id,damage_id,materials_id) VALUES (NULL,NULL,'$id11')");
if($res2)
{
echo "CORRECT";
}
else
{
echo "FALSE";
}
}
}
?>
如果要打印false,则您的查询不起作用。可能有很多事情。现在,不是false,而是echomysql\u error()
。它打印的列“损坏id”不能为空!但我想首先为空,这意味着damage\u id
字段上的设置限制了您可以在该字段中输入的内容。为什么它需要为null
?我需要为空,然后如果我添加了损坏,我将添加它如果它是整数字段类型,请使用0
。如果该字段引用SQL中适当的id
字段,则意味着id
dereferenced是一个autonumber
字段,其中0
永远不会是真正的引用。