2016-12-19 6 views
-3

내 SQL 테이블이 업데이트되지 않습니다. 나는 수 많은 문서를 조사해 보았고 왜 작동하지 않는지 알지 못합니다.왜 mysql 테이블을 업데이트 할 수 없습니까?

if (!empty($_POST['services'])){ 
    $username = mysql_real_escape_string($_POST['username']); 
    $service = mysql_real_escape_string($_POST['services']); 
    $registerquery = mysql_query("UPDATE users SET service = '".$service."' WHERE Username = '".username."'"); 
} 
+0

PHP 및 쿼리를 통해 오류를 확인하십시오. 너는 그렇게하지 않는다. –

+1

'' ".username." ''이 실제 코드라면, 바로 거기에 정의되지 않은 상수입니다. '$'기호를 잊어 버렸습니다. 오타 질문. –

+0

@AnikIslamAbhi 응? 나는 당신이 쓴 것을 결코 쓰지 않았습니다. 나는'서비스'에서 두 종류의 동물 인'username'을 썼다. –

답변

0

내 오류가 내가 쓴 것이 었습니다. 이 문제를 해결하려면 $registerquery = mysql_query("UPDATE users SET services = '".$service."' WHERE Username = '".$username."'"); 도와 주셔서 감사합니다. 나는 어젯밤에 다른 오류를 발견했다고 대답했다.

0

PDO를 사용하려면 코드를 업데이트하십시오. 준비된 문장을 사용하면 데이터베이스에 삽입하는 것이 훨씬 쉽고 안전해질 수 있습니다. 예를 들어

: PDO의 기초를 배울 때

<?php 
    $stmt = $db->prepare("UPDATE `users` SET `services`=:service WHERE `username`=:username"); 
    $stmt->execute(array(':username' => $username, ':service' => $service)); 
?> 

여기에 좋은 자원이다. http://wiki.hashphp.org/PDO_Tutorial_for_MySQL_Developers

좋은 점이 있으십시오! - Scott

-1

나는 이것을 두 번 닫으려고했다. 업데이트 명령에서 "서비스"끝에 "s"를 추가하면됩니다. 나는 그것이 테이블의 요청 된 필드와 일치하지 않는다는 사실을 간과했다.

-1

이와 같이 바꾸어 실행하십시오. $registerquery = mysql_query("UPDATE users SET service = '".$service."' WHERE Username = '".username."'");와 나는 $ 및 서비스에 s 누락되었습니다

$registerquery = mysql_query("UPDATE users SET service = '".$service."' WHERE Username = '".$username."'");