解决方案 »

  1.   

    你不是说搞定了吗?按照你的 sql 指令串
    $sql = "INSERT INTO user_action (user_id, relation_id, concern_time) VALUES ({$_GET['user_id']}, {$_GET['relation_id']}, now())";
    当不传递参数时实际执行的是
    INSERT INTO user_action (user_id, relation_id, concern_time) VALUES (, , now())
    这是错误的指令,不可能有数据插入
    但你却说“如果不传参数就正常写入一条记录”,显然这条记录是在其他地方插入的
      

  2.   

    他的问题感觉就是页面跳转的时候的问题。可能不像他描述的只有这部分的代码,他全部的代码可能在执行这个点击的时候执行了其他插入数据库的操作,能不能加个参数,识别是通过本页面(本点击操作)传递插入值的,也就是mysql中user_id, relation_id, concern_time后再加一个字段s_url然后把值插入进去,看看两条记录中s_url的值是不是一样的
      

  3.   

    我通过a.php页面通过url向b.php页面传递了两个参数,并通过b.php页面向mysql数据库写入传递的这两个参数先直接调用b.php 看看是否插入两条记录。
    如果b.php正常,则问题在a.php,反之亦然。只看你提供的代码,是不会插入两条记录,因为只有一条insert语句。
      

  4.   

    楼主你看下从a页面到b页面的请求头是不是有Referer信息,这个可能会造成重复发送语句的问题。再试试直接在地址栏输入b页面地址带上参数看看会不会写入相同的数据