这听起来像是一个典型的问题,但我无法在 stackoverflow 上找到合适的答案。我已经构建了从 php 表单中添加和删除项目。假设我有一个像这样的简单结构:
数据库
|car_id(PK)|year | make | model | vin |
--------------------------------------------------
| 1 | 2001 | toyota | corolla | 12345 |
| 2 | 1999 | ford | fiesta | 67890 |
| 3 | 2013 | gmc | yukon | abcde |
车类
class Car
{
public car_id;
public year;
public make;
public model;
public vin; //unique, can only be one in DB
function addCar(){...}
function editCar(){...}
function deleteCar(){...}
}
PHP:cars.php?do=edit
这是我想从类运行函数并使用 smarty 显示模板的地方
查看器 edit_cars.html
当此页面加载时,它会从 DB 中提取所有值并创建其中已有值的表单,用户可以覆盖这些值或删除它们。
问题1: 在哪里检查vin(vehicle Identification number,只能是数据库中唯一的一个数字)是否匹配系统中已经存在的汽车?汽车类或cars.php?
问题 2: 更新记录的最佳方式是什么?
- 删除行并插入新行?
- 更新所有值,即使它们没有改变
- 使用 javascript 检查不同的字段?(在更改检查值时,如果更改,请在 PHP 中设置某种 var)
- 使用 php 检查不同的字段?(选择旧值并在提交后将它们与表单值匹配)使用某种 PHP 函数仅更新更改的字段
问题3:(这对我来说更关心) 用户提交表单后,我应该如何处理他们的输入:
- 当用户保持原样并且没有任何改变时
- 当用户完全删除该值时(例如“Make”)
- 当用户仅将字母从小写更改为大写时
我知道这些问题很多,但我很确定很多人将来在搜索这些类型的东西时会从中受益。
非常感谢您的回答