我有两张桌子......
+-----------+-----------+
| employees | positions |
+-----------+-----------+
| id | id |
| fname | pos |
| lname | |
| hphone | |
| cphone | |
| email | |
| posid | |
+-----------+-----------+
我想创建一个表单来添加新员工并拥有该职位的下拉列表 这样您就可以从职位表中列出的职位中选择
我知道如何制作下拉框,但我不知道如何设置sql和 如何将其保存为新记录......有人可以帮助我吗?
用于下拉列表的代码是一个名为getpos的函数,它是......
function getpos(){
$sql=mysql_query("SELECT id,pos FROM positions");
if(mysql_num_rows($sql)){
$select= '<select name="select">';
while($rs=mysql_fetch_array($sql)){
$select.='<option value="'.$rs['id'].'">'.$rs['pos'].'</option>';
}
}
$select.='</select>';
echo $select;
}
它工作正常......我称之为
这是我想到的SQL ......它是否正确?
SELECT employees.id, employees.fname, employees.lname, employees.hphone,
employees.cphone, employees.email, employees.posid
FROM employees
INNER JOIN
positions ON positions.posid = employees.posid
答案 0 :(得分:1)
使用:
SELECT id, pos FROM positions ORDER BY pos DESC;
填充下拉列表。这些职位将按降序排列。
我不知道您使用哪种方法进行表单操作(GET / POST)。但是在下一页上,您将检索$_GET['id']
或$_POST['id']
并将其插入您的其他员工(posid)。
然后使用表单中的值插入数据库。
INSERT INTO (fname, flname, hphone,cphone,email, posid
FROM employees
VALUES (....values from the form ...);
您要插入的变量之一是位置ID。
如果要从数据库中选择数据以便在表格中显示它们,您可以使用此查询:
SELECT position.name, employees.fname, employees.flname,
employees.hphone, employees.cphone,employees.email
FROM employees JOIN positions
ON employees.posid = posistion.id;