رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
insert دو بار انجام میشه
#1
دوستان این کدیه که برای اطلاعات بازدید کننه هر خبرو تو دیتابیس ذخیره میکنه
بار اول insert دوبار انجام میشه و بار دوم id  خبر 0 درج میشه


public function hit($id){        
        $ip= $_SERVER["REMOTE_ADDR"]; 
        $agent =$_SERVER["HTTP_USER_AGENT"];
        $datetime = date("Y/m/d") . ' ' . date('H:i:s') ;
        $date = date("Y-m-d");
        $hits = $this->ArrayQuery("SELECT * FROM `hit` WHERE (`news_id` = '$id' AND `ip` = '$ip' AND `date` = '$date') ");
        $c = count($hits); 
        if( !$c > 0){            
           $ins = $this->db->prepare("INSERT INTO `hit` VALUES ('','$id','$ip','$agent','$date')");
           $ins->execute();
        }else{           
                     
        }        
        $allHits = $this->db->prepare("SELECT * FROM `hit` WHERE(`news_id`='$id') ORDER BY `id` ");
        $allHits->execute();
        $numb = $allHits->rowCount();
        return $numb;
    }

   



اون رکوردی که دورش خط کشیدم اولین بار که جدول خالیه و اینسرت میشه بعد دیگه تکرار نمیشه
پاسخ
تشکر شده توسط:
#2
چه فیلدهایی رو ایندکس یا Unique کردین؟
پاسخ
تشکر شده توسط:
#3
   
پاسخ
تشکر شده توسط:
#4
برای id نباید '' بفرستین. باید NULL بفرستین (بدون کوتیشن)
پاسخ
تشکر شده توسط:
#5
NUll میفرستم که ارور میده که این خونه نمیتونه null باشه
پاسخ
تشکر شده توسط:
#6
Auto_Increment بگذارین و بعد نال بفرستین
پاسخ
تشکر شده توسط:
#7
فرقی نکرد
مشکل اینجاس که بازدید اول هر بازدید کننده رو دوبار درج می کنه و آیدی خبر و در دومین کوئری 0 میزنه
پاسخ
تشکر شده توسط:
#8
اینکه میگین فقط توی کروم اینطوری میشه نشون میده که مشکل از سمت PHP نیست. چک کنید شاید پراکسی یا افزونه خاصی روی کروم نصب دارین که باعث بروز این مشکل میشه.
پاسخ
تشکر شده توسط:
#9
کامل تست کردم فرقی نداره توی فایر فاکسم پیش میاد
پاسخ
تشکر شده توسط:
#10
دوست عزیز شما واسه favicon یه عکس معرفی کن نتیجه رو بگو
پاسخ
تشکر شده توسط:




کاربران در حال بازدید این موضوع: 3 مهمان