2017-04-09 81 views
1

我在将数据插入到两个不同的表中时遇到了问题:创建新成员时,它将在从ID课程获得ID课程后插入成员和成绩表课程表。我同时使用INSERT为他们两个多查询功能,但它不起作用。 你能帮我吗?如何使用相同的表格在多个表中写入多个插入PHP

形式:以上

$id = $re['c_id']; //to get id of course that I want to insert 
    $sql="INSERT INTO member (m_fName, m_lName, m_nId) 
     VALUES('$_POST[m_fName]','$_POST[m_lName]','$_POST[m_nId]'); 
     INSERT INTO grade(c_id,m_nId) 
     VALUES('$id','$_POST[m_nId]')"; 
    mysqli_multi_query($conn,$sql); 

回答

0
$id = $re['c_id']; 
    $sql="INSERT INTO member (m_fName, m_lName, m_nId) VALUES('$_POST[m_fName]','$_POST[m_lName]','$_POST[m_nId]');"; 
    $sql .="INSERT INTO grade(c_id,m_nId) VALUES('$id','$_POST[m_nId]')"; 

    if (mysqli_multi_query($conn, $sql)) { 
    echo "New records created successfully"; 
} else { 
    echo "Error: " . $sql . "<br>" . mysqli_error($conn); 
} 

希望的代码,这将帮助。但尝试首先验证发布的数据。检查是否isset。你没有显示在你正在使用的帖子和你正在发布你的数据的页面

+0

这是工作!非常感谢你 – Khaled

0

回答

<form>  
    <input type="text" name='m_fName'> 
    <input type="text" name='m_lName'> 
    <input type="text" name ='m_nId'> 
</form> 

PHP是正确的,另一种方法是下面

$id = $re['c_id']; //to get id of course that I want to insert 
    $sql="INSERT INTO member (m_fName, m_lName, m_nId) VALUES('$_POST[m_fName]','$_POST[m_lName]','$_POST[m_nId]');"; 
    $act = mysqli_query($conn,$sql); 
if($act) { 
    $sql2 = "INSERT INTO grade(c_id,m_nId) 
    VALUES('$id','$_POST[m_nId]')"; 
    $act2 = mysqli_query($conn,$sql2); 
}