php在同一个表单中添加和修改
欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 大家写网站的时候可能都会遇到这种情况,就是写一个表单,这个表单是用来添加一篇文章的,我们屁颠屁颠的在后台接收数据,然后存入数据库。现在有个问题。当你要对该文章进行修改的时候,你是怎么处
欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入
大家写网站的时候可能都会遇到这种情况,就是写一个表单,这个表单是用来添加一篇文章的,我们屁颠屁颠的在后台接收数据,然后存入数据库。现在有个问题。当你要对该文章进行修改的时候,你是怎么处理的?
我的方法是在同一个表单中做文章,下面的例子是我用 Thinkphp框架写的代码,如果你不懂Thinkphp,没有关系,我只是想说说我的解决方案。
前台如果是这样的。
就是这样一个简单的表单,
我们在后台直接接收数据。
public function add{
if(IS_POST){
//这里其实可以使用在按钮上加一个name="submit"属性。然后使用if(isset($_POST['submit'])来判断post提交。
$title = $_POST['title'];
$content = $_POST['content'];
if($title&&$content){
//插入数据。
$flag = 模型->add(post 过来的数据。);
if($flag) $str = "成功";
else $sttr="失败";
}else{
$str = "失败,标题或者内容不能为空!";
$this->error($str,U('article/index'));
exit;
}
//返回操作结果。
$this->success("添加".$str,U('article/index')); //跳转到文章列表 页
exit;
}
$this->display();//如果不是提交,则显示我们的模板。
}
操作成功失败,跳回添加页面。这里注意一点,我在有些地方添加了一个exit 结构。主要是因为如果不加,会显示下面的模板文件。因为我没有用在那个if(IS_POST)后面加else.
//好,如果要进行修改。我们通过url连接,将其指向article 控制器的add方法,将id传递过去。,也就是上面的方法。
表单中,我们需要这样修改。
我在表单中添加了一个隐藏域。如果有那个变量,则添加该id
后台处理页面。
public function add{
if(IS_POST){
$title = $_POST['title'];
$content = $_POST['content'];
if($title&&$content){
//插入数据。
//这里我先建立一个数组,将数据放入
$data = array(
'title' => $title,
'cntent'=> $content
);
[1] [2]