PHP订单捕获门户
问题描述:
我需要一些建议,然后再开始。我的PHP技能只有3个月的时间,所以我一直在学习。PHP订单捕获门户
我需要创建一个订单捕获屏幕捕获到数据库的信息。
订单最多可以有150行,全部需要被捕获。
我可以很容易地创建表单,但是想知道将其写入数据库的最佳方式是什么。
上提交,我可以使用POST方法获取表单值,并将其写入使用到mysql:
INSERT INTO example
(example_id, name, value, other_value)
VALUES
(100, 'Name 1', 'Value 1', 'Other 1'),
(101, 'Name 2', 'Value 2', 'Other 2'),
(102, 'Name 3', 'Value 3', 'Other 3'),
(103, 'Name 4', 'Value 4', 'Other 4');
是否有这样做的更简化的方法还是需要重复码150行呢?
答
从易用性的角度来看,您可能希望重新考虑您的表单设计。如果用户填写了149行订单,并意外击中后退按钮,他们将会有一个非常糟糕的一天。也许你应该考虑一次捕获一行,或允许用户上传包含所有条目的文件(电子表格,CSV等)。
如果您无法更改表单的设计,则需要循环处理这些行。环路可以是这个样子:
for ($i = 1; $i <=150; $i++) {
$name = $_POST['name' . $i];
$value = $_POST['value1' . $i];
// capture the rest of the field values
$query = "INSERT INTO (...) VALUES ($name, $value, ...)";
mysql_query($query);
}
或者,可以追加每个回路一个大查询的结果,并捕获所有的150行后,运行它。
为了简洁起见,我已经离开了,你需要添加一些细节:
- 逃脱你的投入,以确保您的用户不会破坏你的数据库
- 考虑使用PDO或mysql_ *以外的其他内容可以使您的数据库使用更加容易。
- 检查以确保您没有捕获并插入空值,如果一行留空。