2011-01-22 7 views
0

PHP 스크립트에서 실행될 쿼리를 사용하여 데이터베이스에서 두 행을 업데이트하려고하는데 하나의 조건 (WHERE) 만 있습니다. 내가 시도한 것은 :두 행을 업데이트하십시오 - MySQL

$sql = 'UPDATE ' . CANNED_MESSAGES . " 
       SET canned_message_content = '" . $db->sql_escape($content) . "', 
        canned_message_title = '" . $db->sql_escape($title) . "' 
       WHERE id = '" . intval($id) . "'" ; 
$db->sql_query($sql); 

내 쿼리에 무슨 문제가 있다고 말할 수 있습니까? :)

+1

왜 문제가 있다고 생각하는지 말해 줄 수 있습니까? –

+0

쿼리를 실행하려고했을 때 잘못된 점을 알려 주실 수 있습니까? :-) –

+0

"id"가 한 행에 대해 고유 할 것 같은 것처럼 보입니다. 이것이 왜 두 가지를 업데이트해야한다고 생각합니까? –

답변

1

이것은 인용 불일치 때문일 수 있습니다. 이 번호를 사용하십시오.

$sql = "UPDATE '" . CANNED_MESSAGES ."' 
       SET canned_message_content = '" . $db->sql_escape($content) . "', 
        canned_message_title = '" . $db->sql_escape($title) . "' 
       WHERE id = '" . intval($id) . "' " ; 
+0

나는 이것이 효과가 있었다고 생각한다! – Aborted

+0

프로그래밍에서 작은 것을 고려하지 않고 어떻게 답변을 투표 할 수 있습니까? 프로그래밍에서 가장 작은 점은 그랬던 것처럼 문제를 야기 할 수 있습니다. – Gaurav

1

나는 두 행이 동일한 ID 열을 가질 수 있다는 것을 의심 스럽다. 그들은 할? 그렇지 않다면 어떻게 그러한 제약 조건을 가진 열에 조건을 지정하여 2 행을 업데이트 할 수 있습니까?

+0

무슨 뜻인지 이해할 수 없습니까? :) – Aborted

+0

업데이트하려는 행의 일부 샘플 데이터 게시 – diagonalbatman

+0

여기에 설명 드리겠습니다. 실제로 쿼리는 함수의 일부이며 ID는 HTML의 숨겨진 필드이므로 모든 CANNED MESSAGE는 고유 한 ID를 가지고 있으며이 함수의 ID는 단순히 $ _POST [ 'id']를 전달했습니다. 나는 그것을 꽤 잘 설명 할 수는 없다. 나는 그것을 어떻게 작동시켜야하는지 거의 이해하지 못한다 : P – Aborted

관련 문제