2013-07-01 3 views
0

juytdb 테이블 users 및 열 이름이 usernameemail 인 SQL 데이터베이스에서 특정 행을 업데이트하는 많은 방법을 시도했습니다. 우선 연결을 시도하고 나는이 작동하지 않습니다 테이블 특정 행을 업데이트 할 수 없습니다.

session_start(); 
$username = $_SESSION['var']; //acutally users are logged so I just need to add their email 

$email = $_POST['email']; //value I got from an inputbox 


    UPDATE users 
SET email='[email protected]'; 
WHERE username='billy'; 

을 사용하여 특정 행을 업데이트하고 싶었 동안 연결이 이제

$localhost = "localhost"; 
$dbuser = "google"; 
$dbpass = ""; 
$dbname = "juytdb"; 



$connect = mysql_connect($localhost ,$dbuser ,$dbpass); 

mysql_select_db($dbname, $connect); 

성공적인했다, 나는 또한

$sql = "UPDATE 'users' SET 'email' = '$email' WHERE 'username' = '$username'"; 
mysql_query($sql); 

시도 또한 이메일의 기본값은 "not added"으로 설정됩니다.

+1

많은 것들을. 우선, mysql_ * 함수를 더 이상 사용하지 말고 mysqli_ * 또는 PDO를 사용하십시오. 그런 다음 몇 가지 기본적인 SQL 예제를 살펴보십시오. 열은'''또는''으로 둘러싸 일 수 있지만 문자열은'''또는'''로 둘러싸야만하며, 쿼리에서 사용하기 전에 데이터를 이스케이프 처리해야한다는 것을 잊지 마십시오. –

+0

감사합니다! – atari400

답변

1

역 인용 부호가 있어야하는 곳을 따옴표로 묶습니다. 이 시도 :

$sql = "UPDATE `users` SET `email` = '$email' WHERE `username` = '$username'"; 
1

이 시도 : 그 코드를 잘못

$sql = "UPDATE users SET email = '".$email."' WHERE username = ".$username; 
+0

이것은 작동하지 않습니다 :) 문자열은'''또는''''로 둘러싸여 야합니다 –

+0

죄송합니다! 답변을 수정했습니다. :) – khushalbokadey

+0

이상한 일이 일찍 너무 일했습니다! – atari400

관련 문제