2013-03-18 3 views
0

나는 내가 달리고있는 MySQL 쿼리를 가지고있다. articleswritten이라는 필드에 1을 추가하고 싶습니다.MySQL 필드에 1을 더하는 것

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''users' SET articleswritten = articleswritten + 1 WHERE id = '1'' at line 1

코드 :

$sql = "UPDATE 'users' SET articleswritten = articleswritten + 1 WHERE `id` = '$userid'"; 
$result = mysql_query($sql) or die(mysql_error()); 

내가 문제를 찾을 수 없습니다

나는이 오류가 발생합니다. 내가 장님인가?

도움을 주시면 감사하겠습니다.

+3

'users'는 테이블 이름이므로 작은 따옴표로 묶지 마십시오. 'UPDATE users SET ....'백틱으로 선택적으로 인용 할 수 있습니다. –

+1

http://stackoverflow.com/questions/11321491/mysql-when-to-use-single-quotes-double-quotes-and-backticks를 참조하십시오. –

답변

0

UPDATE `users` 

하거나

UPDATE users 

단일 따옴표 테이블 이름이 유효하게해야 하나. 쿼리의 다른 모든 항목은 괜찮습니다.


그러나 쿼리는 삽입에 취약합니다. ext/mysql을 사용하는 대신 PDO 또는 mysqli와 함께 올바르게 매개 변수화 된 쿼리를 사용해야합니다.

0

여기에 테이블 이름을 작은 따옴표로 묶을 필요는 없습니다. 이 작업을 수행해야합니다

$sql = "UPDATE users SET articleswritten = articleswritten + 1 WHERE id = '$userid'"; 
관련 문제