我正在开发一个员工数据库,用于存储useraccount信息。我已经创建了表单,现在正在努力将表单中的数据导入数据库。我的Users
表包含名字,姓氏,电子邮件等字段以及外键organization_id,supervisor_id等。到目前为止,我有以下代码用于插入非外键字段:< / p>
$f_name = $_POST['firstName'];
$l_name = $_POST['lastName'];
$user_type = $_POST['userType'];
//etc...
$insert = "INSERT INTO Users(f_name, l_name, user_type, email, empl_status_id, reliab_status_id, secr_status_id, ";
$values = "VALUES($f_name, $l_name, $user_type, $email, $empl_status, $reliab_status, $secr_status, ";
if($w_username) {$insert .= "w_username, "; $values .= "'$w_username', ";});
$sql = $insert . $values;
除w_username
之外,所有这些字段都是必填项,可以留空。组织和主管也可以留空。
问题是,当它们不为null时,我不确定如何将它们插入到数据库中。在表单中,用户可以在链接到数据列表的文本字段中输入他们的组织。数据列表应由先前输入的组织填充。如果输入了新组织,则应将其添加到数据库中,从而添加到数据列表中。
如果从数据列表中选择了组织ID,我也会插入吗?我怎么做?我想也许我不得不遍历列表,但如果列表最终变得很长,那不是一个问题吗?
注意:请解释为我5岁,我真的很陌生!
答案 0 :(得分:0)
尝试下面的内容
<?php
//take OrganizationID as text from form (leave auto complete as it)
$sql = "select OrganizationID from org where Organization_name LIKE '".$_POST['OrganizationName']."'";
//execute it .....
if(mysql_num_rows()>0){
$id = $row['id']; //and put in foreign table
}
else{
// insert to org here and get last inserted id calling mysql_insert_id() ;
// and put in foreign table
}
?>