2012-10-27 3 views
-4

가능한 중복 :
php update is not updating databaseUPDATE가 응답하지 않습니다. 뭐가 잘못 됐어?

이 모든 것이 잘못되는 곳이다 중요한 코드입니다. 변수 $ username을 출력하면 정확한 응답을 얻을 수 있습니다. 모든 것이 완벽하게 작동해야합니다. 그러나 그것은 단지하지 않습니다. 무엇이 잘못 됐는지 아무도 모른다면 누구나 대답하십시오. 고맙습니다.

<?php 

session_start(); 

$connection = mysql_connect("mysql15.000webhost.com", "a4987634_quiz", "jimbo1") 
or die (mysql_error()); 

mysql_select_db("a4987634_quiz", $connection) 
or die (mysql_error()); 

$username = $_SESSION['username']; 
$password = $_SESSION['password']; 

$answer = $_POST['answer']; 

if(isset($_POST['answer']) && 
$_POST['answer'] == 'public enemy') 
{ 
?> 

<h3 id = "correct"> Correct </h3> 

<?php 

$sqlcorrect = "UPDATE users SET q1 = 'correct' WHERE username=".$username; 

mysql_query($sqlcorrect); 
(mysql_error()); 

} 
else { 

?> 

<h3 id = "incorrect"> Incorrect </h3> 

<?php 

$sqlwrong = "UPDATE users SET q1 = 'wrong' WHERE username=$username"; 

mysql_query($sqlwrong); 
(mysql_error()); 

} 

?> 
+0

$ username을 받으시겠습니까? – sree

+1

작은 따옴표 안에 SQL 안에'$ username'을 넣으십시오. 즉 '$ username'입니다. – air4x

+0

답변은 [이 질문에 게시했습니다] (http://stackoverflow.com/questions/13075115/php-update-is-not-updating-database)와 동일합니다. '$ username' 문자열을 인용하지 않았습니다. (또한, mysql_ * 함수를 사용하지 말고 PDO/mysqli를 살펴보십시오.) – DCoder

답변

1

사용자 이름을 인용하지 않으므로 SQL synax 오류가 발생할 가능성이 큽니다.

다음은 올바른 구문되는 기회를 약자

$sqlcorrect = "UPDATE users SET q1 = 'correct' WHERE username='$username'"; 
1

이처럼 문을 사용하십시오 :

$sqlcorrect = "UPDATE users SET q1 = 'correct' WHERE username='{$username}'"; 

내가 그것은 당신이 따옴표를 누락하는 것이 될 수있다 생각합니다.

+0

나는 이것을 전에 보지 않았다. 나는 그것을 시도하고 당신에게 알려 줄 것이다. –

+0

그것은 작동합니다! 정말 고맙습니다!!! 4 일 간의 고민으로이 웹 사이트에서 3 번 질문을하게되었습니다. 감사. –

관련 문제