我有一个表单request_form.php,即管理请求项的采购申请表。
Purchase_Request_No :(自动 - 自动增量)
日期:
部门:
供应商:
Item_Request:
示例有5行:
1.
2.
3.
4.
5.
我希望一旦购买请求有1个Purchase_Request_No
示例:
Purchase_Request_No:17
日期:2012年7月25日
部门:生产
供应商:Microsoft
Item_Request:
1.Windows XP Professional
2.Keyboard
3.Mouse
4.LCD监视器
5.Speaker
那么,如何使用1个Purchase_Request_No以及项目请求超过1个项目(在这种情况下我放了5个项目)?
任何人都可以帮助我吗? 谢谢你的进步。
大家好,现在回来我已经在编写这个概念了。
它成功地将数据保存到数据库中,但是当插入5项时,它每个ID每个项目提交数据。
示例:
第1项 - 计算机(购买1号)
第2项 - 鼠标(购买2号)
我想要的是:
第1项 - 计算机(购买1号)
第2项 - 鼠标(购买1号)
这是我的代码: 我使用自动增量购买否。
<?php
$conn = oci_connect("system", "dev01");
$n = $_POST['jum'];
for ($i=1; $i<=$n; $i++)
{
$dept=$_POST['dept'];
$date_request=$_POST['date_request'];
$supplier=$_POST['supplier'];
$item=$_POST['item'.$i];
$qty=$_POST['qty'.$i];
$uprice=$_POST['uprice'.$i];
$total=$_POST['total'.$i];
$s = oci_parse($conn,
"insert into purchase_request(dept_id, supplier_id, date_request, item, qty, uprice, total_amount) values ('$dept', '$supplier', '$date_request', '$item'
, '$qty', '$uprice', '$total'
)");
$r = oci_execute($s);
oci_rollback($conn);
echo "Data was committed\n";
}
?>
有什么想法吗?
答案 0 :(得分:2)
有三张桌子。一个包含产品:
id Product
1 Windows XP Professional
2 Keyboard
3 Mouse
4 LCD Monitor
5 Speaker
另一个包含请求:
id request_date dept supplier
1 25-Jul-2012 Production Microsoft
第三个将前两个映射到一起
id request_id item_id
1 1 1
2 1 2
3 1 3
4 1 4
5 1 5
(或者,你可以制作产品素数的ID并将items
列存储为多个项目。你需要做的就是找到{{1}的素因子}列,然后你就有了项目列表!*)
*出于某种原因,没有人在工作认为这是个好主意。
答案 1 :(得分:-1)
最佳做法是创建两个表格
Purchase
Purchase_Id (Primary Key)
Supplier_Id: (foreign key referring Supplier table)
Purchase_date: datetime
Purchase_Items_Details
purchase_item_id (primary key)
purchase_id (foreign key to Purchase table)
item_id (foreign key to Products/Items table)
qty (Quantity)
在Purchase
表中,您只需输入基本购买详情,有关购买的详细信息将添加到Purchase_Items_Details