2013-12-11 1 views
0

내가 imgshot의 관리 영역 안에 있고 내가Imgshot 로그 아웃 관리자 패널 오류

Notice: Undefined index: user_id in /home/****/public_html/inc/functions.php on line 371 

오류의 라인에 다음 오류가 로그 아웃 관리자에서 로그 아웃 링크를 클릭 할 때 (371)는 다음 중 하나 개

where `id`='$_SESSION[user_id]' OR `id` = '$_COOKIE[user_id]'") or die(mysql_error()); 

전체 링크 내가 오류를 수정할 수있는 방법은 다음 http://justpaste.it/dt75이다?

답변

0

변경이 코드 :

if (isset($_SESSION['user_id']) || isset($_COOKIE['user_id'])) { 
      mysql_query("update `users` 
      set `ckey`= '', `ctime`= '' 
      where `id`='$_SESSION[user_id]' OR `id` = '$_COOKIE[user_id]'") or die(mysql_error()); 
     } 

일이에 :

$user_id1 = intval(isset($_SESSION['user_id']) ? $_SESSION['user_id'] : 0, 10); 
$user_id2 = intval(isset($_COOKIE['user_id']) ? $_COOKIE['user_id'] : 0, 10); 
if ($user_id1 || $user_id2) 
    mysql_query("update `users` 
     set `ckey`= '', `ctime`= '' 
     where `id` in (".$user_id1.",".$user_id2.")") or die(mysql_error()); 

참고 : 사용자가 다른 값

0
을로 교체 할 수 있습니다로, 쿠키 USER_ID 저장하는 매우 안전하지 않다

세션 또는 쿠키 값 중 하나가 설정되어 있는지 확인했지만 둘 다 액세스하려고 시도하기 때문에 오류가 발생합니다.

첫 번째 경고는 오류가 아니므로 원하는 경우 무시할 수 있습니다.

if (isset($_SESSION['user_id']) || isset($_COOKIE['user_id'])) { 
     $user_id= isset($_SESSION['user_id'])?$_SESSION['user_id']:$_COOKIE['user_id']; 
     mysql_query("update `users` 
     set `ckey`= '', `ctime`= '' 
     where `id`='$user_id'") or die(mysql_error()); 
    } 
그러나

는 다음과 같은 시도 할 수 있습니다 해결하기