2012-07-26 4 views
0

다음 코드가 있으며 점수와 날짜를 업데이트 할 때 잘 동작합니다. 그러나 행의 이름이나 국가는 업데이트되지 않습니다. 이 PHP 문자열과 관련이 있나요 ??? 매우 혼란!UPDATE 테이블 mysql & php

$userName = "John"; 
$userCountry = "USA"; 
$lowestScoreId = 99; 
$userPoints = 500; 


include 'config.php'; 


$currentTime = time(); 

mysql_query("UPDATE highScores SET name = $userName WHERE id='$lowestScoreId'"); 
mysql_query("UPDATE highScores SET score = $userPoints WHERE id='$lowestScoreId'"); 
mysql_query("UPDATE highScores SET country =$userCountry WHERE id='$lowestScoreId'"); 
mysql_query("UPDATE highScores SET date = $currentTime WHERE id='$lowestScoreId'"); 
+0

MySQL 테이블 필드가 올바르게 설정되어 있습니까? varchar ? –

답변

11

당신이 설정 한 값을 따옴표를 잊어 버렸습니다. 그리고 당신은 1 개의 질문에서 그것을 할 수 있습니다.

UPDATE highScores 
SET `name` = '$userName', 
    `score` = '$userPoints', 
    `country` = '$userCountry', 
    `date` = '$currentTime' 
WHERE id='$lowestScoreId'" 
1

하나의 문장에서이 작업을 수행해야합니다.

$userName = "John"; 
$userCountry = "USA"; 
$lowestScoreId = 99; 
$userPoints = 500; 

include 'config.php'; 

$currentTime = time(); 

mysql_query("UPDATE highScores SET name = '$userName', score = '$userPoints', country = '$userCountry', date = '$currentTime' WHERE id='$lowestScoreId'"); 
1

또한 PHP mysql_ 함수를 사용하지 마십시오. MySQLi에서 더 빠르고 새롭고 더 많은 기능을 살펴보십시오.

+0

또는 PDO http://php.net/manual/en/book.pdo.php를 사용할 수 있습니다. MySQLi와 비슷하지만 MySQL 이외의 데이터베이스를 지원한다는 장점이 있습니다. –