解决方案 »

  1.   

    $sql = "INSERT INTO user_action (user_id, relation_id, concern_time) VALUES ('$user_id', '$relation_id', now())"; $state = 
    mysql_query($sql);加以调试下。
      

  2.   

    $state = mysql_query($sql);
      if($state)
    按我的理解这里执行了两次。
    解决方法直接是 if(mysql_query($sql))就可以了
      

  3.   

    他这个是自己写的语句的问题。他语句是执行了两次插入,一个是$state的时候插入了一次,另一个是if判断的时候又插入了一次(if判断是通过插入成功与否来返回布尔值的)
      

  4.   

    那只是把query的返回值赋给了变量$state,后边在使用这个变量时不会再去执行query的。
    如果真是你说的那样,使用一次变量$state就执行一次query,,那还得了
      

  5.   

    应该是重复点了1+次。
    LZ把a标签里的url手写出来,放到浏览器里执行一次试试。
      

  6.   

    那只是把query的返回值赋给了变量$state,后边在使用这个变量时不会再去执行query的。
    如果真是你说的那样,使用一次变量$state就执行一次query,,那还得了
    我看的视频里面都是直接if的没有去单独的增加,你可以让他去试下的,如果没有插入数据就是我错了。也可以让大家多知道一个错误啊。如果成功了,那就说明我对了,反正他可以试验下的。然后在下面给个结论。
      

  7.   

    那只是把query的返回值赋给了变量$state,后边在使用这个变量时不会再去执行query的。
    如果真是你说的那样,使用一次变量$state就执行一次query,,那还得了
    我看的视频里面都是直接if的没有去单独的增加,你可以让他去试下的,如果没有插入数据就是我错了。也可以让大家多知道一个错误啊。如果成功了,那就说明我对了,反正他可以试验下的。然后在下面给个结论。
    就像布尔值true和false,看起来false为0,其实false比所有的负数都小。有些东西还是试验下看看。我懒得试验,但我还是喜欢看贴,看别人讲经验的
      

  8.   

    那只是把query的返回值赋给了变量$state,后边在使用这个变量时不会再去执行query的。
    如果真是你说的那样,使用一次变量$state就执行一次query,,那还得了
    我看的视频里面都是直接if的没有去单独的增加,你可以让他去试下的,如果没有插入数据就是我错了。也可以让大家多知道一个错误啊。如果成功了,那就说明我对了,反正他可以试验下的。然后在下面给个结论。
    就像布尔值true和false,看起来false为0,其实false比所有的负数都小。有些东西还是试验下看看。我懒得试验,但我还是喜欢看贴,看别人讲经验的
    FALSE确实比负数小。
    ------------------------------------------------------------------
    if($result = mysql_query($sql)){}

    $result = mysql_query($sql);
    if($result){}

    if(mysql_query($sql)){}
    是等价的,写法个人习惯不一样。
    另外。query之后肯定要遍历数据:
    while ($row = mysql_fetch_assoc($result)) {
            echo $row["userid"];
            echo $row["fullname"];
            echo $row["userstatus"];
        }
    注意里面的$result。
      

  9.   


    用 if(mysql_query($sql)还是不行,同样会写入两条相同数据
      

  10.   

    if($state)
    {
    echo "<script>alert('一见钟情成功!!'); location.href='user_action.php';</script>";
                     //echo '<script>alert(\'一见钟情成功!!\'); location.href=\'user_action.php\';</script>';
    } 终于发现如果把echo改为下面注释的一句就不会写入两条相同数据
      

  11.   

    那只是把query的返回值赋给了变量$state,后边在使用这个变量时不会再去执行query的。
    如果真是你说的那样,使用一次变量$state就执行一次query,,那还得了
    我看的视频里面都是直接if的没有去单独的增加,你可以让他去试下的,如果没有插入数据就是我错了。也可以让大家多知道一个错误啊。如果成功了,那就说明我对了,反正他可以试验下的。然后在下面给个结论。
    还是一样,会插入两条相同的数据