2009-07-30 7 views
0
function updateDemo($demoTitle, $desc, $keyword, 
     $uploadedFile, $clientname, $uploadedImage, $adminName, $demoID)  
{ 
    $query = "UPDATE demos SET dmTitle ='sdsdsdsdsd' , dmDesc = '$desc' , 
     dmKey = '$keyword' , dmLink= '$uploadedFile' , client='$clientname' , 
     imageTitle = '$uploadedImage' , userName = '$adminName' 
     WHERE id = '$demoID'"; 

    $result = mysql_query($query); 
    if($result) { 
     return 'yes'; 
    } else { 
     return mysql_error(); 
     } 
} 

위의 질문에 대한 업데이트입니다. 나는 쿼리를 실행하고 예 반환 값을 얻고있다.하지만 값이 업데이 트되지 않습니다 나를 위해 이상한 것 같습니다. 내가 PHP에서 여기로 확인할 때업데이트 쿼리 이상한 문제

비록, 내가 업데이트 값을 얻고있다 ...

나는 제목에 대한 값을 하드 코딩 시도하고도 업데이트 가져 오지 보인다.

+3

"나는 가치를 중시하려고 노력했다."- 최고의 오타. –

답변

4

mysql_affected_rows()가 반환하는 것을 확인하십시오. 1이 아니면 $ demoID가 잘못되었을 가능성이 있습니다. 1이면 DB의 잘못된 위치를보고있을 것입니다.

가능한 경우 준비된 문 (mysqli, PDO)을 지원하는 DB 인터페이스로 전환하는 것을 고려하십시오. 편집

여기 이것은 당신이 전역 변수 $ DB PDO 연결을 들고 있다고 가정 PDO

function updateDemo($demoTitle, $desc, $keyword, 
     $uploadedFile, $clientname, $uploadedImage, $adminName, $demoID)  
{ 

    $query = "UPDATE demos SET dmTitle = ? , dmDesc = ? , 
     dmKey = ? , dmLink= ?, client=? , 
     imageTitle = ? , userName = ? 
     WHERE id = ?"; 

    global $db; 
    $stmt = $db->prepare($query); 
    $stmt->execute(Array(
     $demoTitle, $desc, 
     $keyword, $uploadedFile, $clientname, 
     $uploadedImage, $adminName, 
     $demoId 
    )); 

    return $stmt->rowCount();  
} 

를 사용하여 코드의 (가 더 나은 솔루션을하지만 그것은 단순한 그리고 아마 충분합니다).

+0

당신은 내 코드를 수정하고 mysql_affected_rows와 PDO에 맞출 수 있습니까? 나는 새로운 것을 배울 것입니다. – Kevin