Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Duplicate entry

Сообщения:  [1-3] 

 
 автор: Skyonex_   (01.09.2006 в 13:53)   письмо автору
 
   для: Trianon   (01.09.2006 в 13:38)
 

Спасибо. Буду править.

   
 
 автор: Trianon   (01.09.2006 в 13:38)   письмо автору
 
   для: Skyonex_   (01.09.2006 в 13:20)
 

А откуда у Вас уверенность, что в таблице нет записей с этим session_key?
Если в рамках одной сессии залогинятся два человека - вот Вам и дуп.

   
 
 автор: Skyonex_   (01.09.2006 в 13:20)   письмо автору
 
 

Где то я лажаю здесь. Подскажите пожалуйста.

Вот часть кода после успешной проверки пароля и логина:


<?php

function authenticateAccount($login)
  {           
      
$query="select id from users where login='$login'";
      
$this->mydb->Query($query);      
      
$user_id=$this->mydb->GetSqlResult(0);
      
      
$sid=trim(session_id());
      
//---------------------------------------------------------------------
      
$query="select count(*) from online_users where user_id=$user_id";
      
$this->mydb->Query($query);
      if(
$this->mydb->GetSqlResult(0)>0)
      {
          
$this->mydb->Query("delete from online_users where user_id=$user_id");
      }
      
$query="insert into online_users(session_key,session_expire,user_id,wapver) values('$sid',NOW(),$user_id,1)";      
      
$this->mydb->Query($query);
...
}
?>


Все бы хорошо, но время от времени получаю ошибку вида:

01/09/2006 12:16: Duplicate entry 'c343005067f8441f53cb4fd77dc1d832' for key 1
insert into online_users(session_key,session_expire,user_id,wapver)
values('c343005067f8441f53cb4fd77dc1d832',NOW(),16109,1)

Т.е. получается как буд-то в таблицу прописываются два одинаковых id сессий.

   

Сообщения:  [1-3] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования