2014-02-17 3 views
0

안녕하세요 제 문제는 내 IP를 변경하지만 동일한 쿠키가 있으면 else statment로 이동하여 실패 할 때 쿼리를 실행하는 것입니다. 내가 왜 계산에 $ 쿠키 매개 변수를 가져 가지 않을지 모르겠다.3 조건으로 mysql을 선택하십시오.

<?php 
    require_once('../core/dbconfig.php'); 
    $dbc = mysqli_connect(DB_SERVER, DB_USERNAME, DB_PASS, DB_NAME); 
    $ip_adress=$_SERVER['REMOTE_ADDR']; 
    $cookie=$_COOKIE['Cookie']; 
    $id_user=$_POST['id_user']; 

    $query="Select * from IP_Cookie_Verify where ID_User='$id_user' and Cookie='$cookie' and IP='$ip_adress'"; 
    $result=mysqli_query($dbc,$query) or die("query failed: " . mysqli_error($dbc)); 
    if($row = mysqli_fetch_array($result)) 
    {  
      echo'fail';    
    } 
    else 
    { 
    $query="Insert into IP_Cookie_Verify (IP,ID_User,Cookie) VALUES ('$ip_adress','$id_user','$cookie')"; 
        $result=mysqli_query($dbc,$query) or die("query failed: " . mysqli_error($dbc)); 


    $queryz="Update `users` SET Voturi=Voturi+1 where id='$id_user'"; 
        $resultz=mysqli_query($dbc,$queryz) or die("query failed: " . mysqli_error($dbc)); 

     $query="Select * from `users` where id='$id_user'"; 
     $result=mysqli_query($dbc,$query) or die("query failed: " . mysqli_error($dbc)); 
     while ($row = mysqli_fetch_array($result)) 
        { 
        $voturi=$row['Voturi']; 
        } 
        echo''.$voturi.''; 
    } 
+0

당신은'$ _SESSION' 대신 사용하려고 있나요? – CIRCLE

+0

같은 페이지에서 사용해야하는 경우 왜 쿠키를 사용하고 있습니까? 변경 값으로 시도하십시오 $ cookie = $ _ COOKIE [ 'ck_abc']; – Naeem

+0

나는 그 쿠키가 내 쿠키를 내게 반향하는 경우 문제가 발생하지 않아야한다. – user3058067

답변

0

쿼리에서 ip 주소를 확인합니다. 그러나 으로 변경하면 쿼리가 실패하고 결과가 반환되지 않으므로 else 조건이 실행됩니다.

다음과 같이 쿼리를 변경

:

$query="Select * from IP_Cookie_Verify where ID_User='$id_user' and (Cookie='$cookie' OR IP='$ip_adress')"; 
관련 문제