weixin_34999334 2016-06-17 04:10 采纳率: 0%
浏览 1627

通过Php程序 像数据库插入内容时。在页面提交之后,mysql会有两个相同的数据 只有id不同

if($action == 'insert'){ //接收数据 $title = empty($_POST['subject']) ? '' : $_POST['subject']; $content = empty($_POST['content']) ? '' : $_POST['content']; $user_id = $_SESSION['myuser']['id']; $create_ad = time(); $summary = empty($_POST['summary']) ? '' : $_POST['summary']; $category_id = empty($_POST['category_id']) ? '' : $_POST['category_id']; $cover = empty($_POST['cover']) ? 'mr.jpg' : $_POST['cover']; $state = empty($_POST['submit']) ? '' : $_POST['submit']; $is_delete = 0; $tags = ''; //验证 if($category_id == '' || $title == '' || $content = '' || $summary == ''){ header('refresh : 2 ; url = article.php?a=add'); echo '输入的信息有误,请重新输入'; exit; } //入库 $sql = "INSERT INTO tn_article VALUES(null, '$title','$content', $user_id, $create_ad, '$summary', $category_id, '$cover', '$state', '$is_delete', '$tags')"; //获取页面 if($dao ->query($sql)){ header('location:article.php?a=list'); exit; } else{ header('refresh : 2; url = article.php?a=add'); echo '添加失败'; exit; }}

  • 写回答

3条回答 默认 最新

  • zhangsheng_1992 2016-06-22 03:26
    关注

    看了下你的代码 没什么问题 估计是你请求了两次 然后插入了两条记录 由于主键自增的 所以导致只有主键不一样
    整理后的代码我贴出来 有兴趣的可以一起看下

     if($action == 'insert'){ 
        //接收数据 
        $title = empty($_POST['subject']) ? '' : $_POST['subject']; 
        $content = empty($_POST['content']) ? '' : $_POST['content']; 
        $user_id = $_SESSION['myuser']['id']; 
        $create_ad = time(); $summary = empty($_POST['summary']) ? '' : $_POST['summary']; 
        $category_id = empty($_POST['category_id']) ? '' : $_POST['category_id']; 
        $cover = empty($_POST['cover']) ? 'mr.jpg' : $_POST['cover']; 
        $state = empty($_POST['submit']) ? '' : $_POST['submit']; 
        $is_delete = 0;
        $tags = ''; //验证 
        if($category_id == '' || $title == '' || $content = '' || $summary == ''){ 
            header('refresh : 2 ; url = article.php?a=add'); 
            echo '输入的信息有误,请重新输入'; exit; 
    
        } 
        //入库 
        $sql = "INSERT INTO tn_article VALUES(null, '$title','$content', $user_id, "
                . "$create_ad, '$summary', $category_id, '$cover', '$state', '$is_delete', '$tags')"; 
        //获取页面 
        if($dao ->query($sql)){ 
            header('location:article.php?a=list'); 
            exit; 
    
        } else{
            header('refresh : 2; url = article.php?a=add');
            echo '添加失败'; exit; 
        }
    }
    
    评论

报告相同问题?

悬赏问题

  • ¥15 cgictest.cgi文件无法访问
  • ¥20 删除和修改功能无法调用
  • ¥15 kafka topic 所有分副本数修改
  • ¥15 小程序中fit格式等运动数据文件怎样实现可视化?(包含心率信息))
  • ¥15 如何利用mmdetection3d中的get_flops.py文件计算fcos3d方法的flops?
  • ¥40 串口调试助手打开串口后,keil5的代码就停止了
  • ¥15 电脑最近经常蓝屏,求大家看看哪的问题
  • ¥60 高价有偿求java辅导。工程量较大,价格你定,联系确定辅导后将采纳你的答案。希望能给出完整详细代码,并能解释回答我关于代码的疑问疑问,代码要求如下,联系我会发文档
  • ¥50 C++五子棋AI程序编写
  • ¥30 求安卓设备利用一个typeC接口,同时实现向pc一边投屏一边上传数据的解决方案。