ขอรบกวนช่วยตรวจโค้ดข้างล่างนี้ให้หน่อยนะคะ
จุดประสงค์ของโค้ดนี้ คือ
เช็ค username ในsession นั้นๆ เพื่อดูว่ามันอยู่ใน table รึยัง ถ้ามีอยู่เเล้วจะเก็บคะเเนนจากเกมที่ส่งมาใน current_score โดยส่งคะเเนนที่เคยอยู่ในนั้นไปที่ previous_score อ่ะค่ะ
แต่ถ้าไม่ก้อจะ insert แถวใหม่ค่ะ
ตอนนี้ update คะเเนนได้เเล้ีว เเต่คะเเนนเก่ายังไม่ถูกเก็บใน previous_score อ่ะค่ะ
และก็มี error ตรง error4 ด้วยอ่ะค่ะ
โค้ด: เลือกทั้งหมด
<?php
session_start();
// test
$_SESSION['username'] = "nat";
$host = "localhost";
$user = "root";
$pass = "";
$dbname = "kinderkids";
$connection = mysql_connect($host, $user, $pass) or die ("cannot connect to DB");
$sql = mysql_select_db($dbname,$connection) or die ("Couldn't find db");
if (!$sql) {
die ("cannot select database");
}
print_r($_SESSION);
$s_username = $_SESSION['username'];
//$score = ($_REQUEST['varScore']);
$score = 55;
if ($score) {
$currentDate = date("Y-m-d");
$tbsql = "SELECT username FROM testscore2 where username = '".$s_username."'";
$result = mysql_query($tbsql)or die("error1");
$num_rows = mysql_num_rows($result);
if ($num_rows <> 0) {
while ($row = mysql_fetch_assoc($result))
{
echo $row['current_score'];
$dbcurrent = $row['current_score'];
//$dbprevious = $row['previous_score'];
}
$updateQuery = "UPDATE testscore2 SET previous_score = '{$dbcurrent}' WHERE username = '".$s_username."'";
//$updateQuery .= "WHERE username = '".$s_username."'";
mysql_query($updateQuery) or die("error2");
//$updatesql = "UPDATE testPreviousScore SET current_score = $score WHERE username = {$_SESSION['username']}";
$updatesql = "UPDATE testscore2 SET current_score = '{$score}'";
$updatesql .= "WHERE username = '".$s_username."'";
mysql_query($updatesql) or die("error3");
} else
$insertQuery = "INSERT INTO testscore2(username, last_visit, current_score, previous_score) VALUES ('".$s_username."','$currentDate','$score', '')";
mysql_query($insertQuery) or die("error4");
} else
echo "no score posted";
?>