2012-11-12 4 views
0

데이터베이스 연결을 설정하지 않았다고 가정하기 전에 수행했습니다. 업데이트하지 않는 코드의 유일한 부분은 if empty 문입니다.데이터베이스가 행을 업데이트하지 않음

모든 값을 올바르게 에코 할 수 있습니다. 단지 쿼리가 작동하지 않는 것입니다.

이 디렉토리 설정에 있으며

include('config/stuff.php'); 
if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { // Get Real IP    
    $IP = $_SERVER['HTTP_X_FORWARDED_FOR']; 
} else { 
    $IP = $_SERVER['REMOTE_ADDR']; 
} 

if ($IP=="external server ip here") { 
     if (!empty($referrer)){ 
      $mysqli->query("UPDATE users SET points=points+10, refearn = refearn+10 WHERE username='".$referrer."'") or die(mysqli_error($mysqli)); 
     } 
     $mysqli->query("UPDATE users SET points=points+".$earnings.", completed = completed+1 WHERE username='".$subid."'") or die(mysqli_error($mysqli)); 
}  
+0

오류를 받으셨습니까? 또는 당신이 그 쿼리의 결과를 얻으려고 시도 할 수 있겠습니까? ""사용자를 SET SET 포인트 = 포인트 +10, refearn = refearn + 10 WHERE username = ' "$ referrer."' "'phpmyadmin에서 수동으로 확인하십시오. – Prakash

+0

내가 말할 수있는 것은 오류가 아닙니다. PHPmyadmin에서 작동하는지 확인할 수 있습니다. 지금 당장 그것을 반향 출력하려고합니다. 지금 당장 뇌 기능 검사를 받고 있는데 어떻게 쿼리를 울릴 수 있습니까? – Stax

+0

그래서 그냥 응답을 출력하려고하는 중입니까? –

답변

1

내 생각 엔 verify.php stuff.php

$user = $mysqli->real_escape_string($_SESSION['username']); 
$user_query = "SELECT * FROM users WHERE username = '$user'"; 
$result = $mysqli->query($user_query); 
$row = $result->fetch_assoc(); 
$referrer = $row['ref']; 
$refearn = $row['refearn']; 

라는 이름의 당신이 다음에 추가 질의를 통해 포인트의 값을 검색을 시도 할 수있다 그래서 당신은 단순한 가치로 업데이트하고 있습니다. 그러나, mysql_error()가 에러를 리턴한다면, 알아내는 것이 더 쉬워야한다.

예 : 도움이

$getPoints = mysql_query("SELECT points FROM table WHERE condition"); 
$points = mysql_result($getPoints, 0, "points"); 

$update = mysql_query("UPDATE table SET points=" . ($points+10) . " WHERE condition"); 

희망. 그래도 또 다른 고려 사항. 컨텐트를 표시하기 위해 PHP 태그를 사용하지 않는 한 endif 구조를 사용해야하는 이유는 무엇입니까? 이 도움이

$mysqli->query("UPDATE `users` SET `points`=`points`+10, `refearn` = `refearn`+10 WHERE `username`='".$referrer."'") or die(mysqli_error($mysqli)); 

희망 :

+0

다른 생각을하지는 않을 것이라고 생각합니다 ... 구문이 이미 올바르므로 작동하지 않는 이유를 모르겠습니다. – Stax

0

이 시도. 내가 생각하기에, mysql 쿼리는 mysql 행이 아닌 상수로 생각할 수있다. 시험해보십시오

+0

: (아니요, 작동하지 않았습니다. – Stax

관련 문제