2013-08-03 5 views
0

프로젝트 용으로 인벤토리 시스템에 대한 코드가 있습니다. 당신의 IID와 항목을 업데이트하려고하지 않는 코드에서 모든 것이 잘 작동 '1'나는 ...SQL이 테이블을 업데이트하지 않습니다.

function useItem($uid, $iid) 
{ 
    $sql = "UPDATE player_inv SET amount = amount - 1 WHERE uid = :uid AND iid = :iid"; 
    $que = $this->db->prepare($sql); 
    $que->bindParam('uid', $uid); 
    $que->bindParam('iid', $iid); 
    try{ 
    $que->execute(); 
     if($que) 
     { 
     echo "True"; 
     } 
     else 
     { 
     echo "Wut?";  
     } 
    }catch(PDOException $e){echo $e->getMessage();} 
} 
function ReapWhatYouSow($iid, $uid) 
{ 
    $sql = "UPDATE users join store on users.uid = :uid and iid = :iid SET health = store.type_value + health;"; 
    $que = $this->db->prepare($sql); 
    $que->bindParam('uid', $_SESSION['uid']); 
    $que->bindParam('iid', $iid); 
    try{ 
     $que->execute(); 
     if($que) 
     { 
      $this->useItem($iid, $uid); 
     } 
     else 
     { 
      echo "wut?"; 
     } 
    }catch(PDOException $e){ echo $e->getMessage(); } 
} 

에코의를 무시하십시오 (또는 내가 문제를 있으리라 믿고있어 한 그 적어도입니다) 정말 오류보고에 짜증 그래서 '헛소리'와 '사실'뭔가 제대로 작동하는지 확인하는 내 방식입니다.

+1

_remove_는 무엇을 의미합니까? 표시된 기능 중 어느 것도 인벤토리를 줄이지 만 아무것도 표시되지 않습니다. 무엇이 잘못 되었습니까? 그것이 당신이 기대하는 것에서 무엇을 _ 대신합니까? –

+0

그래, 내가 틀린 말을했는데, 테이블을 "업데이트"한다고 말했어 야했다. 그것은 아무 것도하지 않으며 ID 번호가 '1'이면 항목을 기본적으로 무시합니다. – Gmz1023

+0

예외가 발생했거나 PDO가 다른 방법으로 오류 메시지를 줄 수 있다고 생각합니다. 읽어 보셨습니까? 이 같은 뭔가 : http://www.php.net/manual/en/pdo.errorcode.php – GolezTrol

답변

0

첫 번째 스 폰타 니 우스 반응 ... 함수 ReapWhatYouSow($iid, $uid)도 호출됩니까? 나는 추측하지만이 행은 감각하지 않습니다

$que->bindParam('uid', $_SESSION['uid']); //No sense to pass $uid to the function if a session-variable is used 

그것은 아마해야합니다 :

$que->bindParam('uid', $uid); 
+0

ReapWhatYou는 플레이어가 해당 항목을 사용하려고 할 때 호출됩니다. $ uid 문제를 지적 해 주셔서 감사합니다. 그러나 여전히 문제가되고 있습니다. – Gmz1023

+0

bindParams에 콜론을 추가해보십시오 ... $ que-> bindParam (': uid', $ uid); – bestprogrammerintheworld

1

신경 끄시 고합니다. 나는 바보 야. 도와 주셔서 감사합니다! 변수 문제 였고 IID로 UID를 전환했습니다. 그래서 쿼리는 사용자 ID와 동일한 ID #를 가진 모든 항목을 삭제했습니다. #

+0

쉽게 할 수 있고, 당신을 쳐다볼 때 찾기가 어렵습니다. – bestprogrammerintheworld

+0

그건 과언이 아닙니다. 우스운 일은 내가 생각한 첫 번째 것이었고, 어떻게 든 나는 "그럴 수는 없다. 다른 모든 것이 효과가있다!" – Gmz1023

관련 문제