|
|
|
PHP MSQL รบกวนดูโค้ดเกี่ยวกับการโหวตให้คะแนนกระทู้หน่อยค่ะ |
|
|
|
|
|
|
|
จะกำหนดว่า 1 user สามารถโหวตได้ 1 ครั้ง ต่อ 1 กระทู้ ค่ะ
แต่ตอนนี้ยังเช็คไม่ได้ว่า user ได้โหวตกระทู้นั้นๆไปแล้ว
จะต้องเขียนโค้ดยังไงให้ถูกคะ
Code (PHP)
<? session_start();
if($_SESSION['user_id'] == "")
{
echo "<script> alert (' please LOGIN !!') ;</script>";
echo"<meta http-equiv=\"refresh\" content=\"0;url='login.php'\">";
exit();
}
if($_SESSION['status'] != "0")
{
echo "<script> alert ('This page for admin only') ;</script>";
echo"<meta http-equiv=\"refresh\" content=\"0;url='login.php'\">";
exit();
}
?>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<? include("connect.php");
$sql = "select * from vote where question_id = '".$_GET['questionid']."' and user_id = '$user_id' ";
$dbquery=mysql_db_query($db,$sql);
$queryC = mysql_fetch_array($dbquery);
$sql3 = "select * from vote inner join webboard_post on vote.question_id = webboard_post.question_id and vote.user_id = webboard_post.user_id ";
$dbquery3=mysql_db_query($db,$sql3);
$queryC3 = mysql_fetch_array($dbquery3);
$numC = mysql_num_rows($queryC);
if ($numC != 0)// ถ้า username มีการใช้งานไปแล้ว จะมีการแจ้งเตือนให้เปลี่ยน
{
echo "<script> alert (' คุณโหวตหัวข้อนี้ไปแล้วค่ะ ') ; history.back();</script>";
exit ();
}
//$vote_count = 0;
$sql1 = "insert into vote (vote_id , question_id , user_id , vote_count) VALUES ('','".$_GET['questionid']."','$user_id','$vote_count') ";
$dbquery1=mysql_db_query($db,$sql1);
if ($question_id!=$question_id || $user_id!=$user_id)
{
echo "<script> alert ('คุณโหวตให้หัวข้อนี้ไปแล้วค่ะ') ; history.back();</script>";
exit();
}
$vote_count = $queryC['vote_count']+1;
$sql2="update vote set vote_id='' , vote_count='$vote_count' where question_id = '".$_GET['questionid']."' ";
$dbquery2=mysql_db_query($db,$sql2);
echo "<script> alert (' คุณโหวตให้กับหัวข้อนี้เรียบร้อยแล้วค่ะ ') ; history.back();</script>";
//mysql_close();
?>
ตอนนี้มันเก็บข้อมูลลงดาต้าเบสแบบนี้อ่ะค่ะ ซึ่งไม่ใช่แบบที่ต้องการ
Tag : PHP, MySQL
|
ประวัติการแก้ไข 2011-08-16 15:17:37
|
|
|
|
|
Date :
2011-08-16 15:17:17 |
By :
nokz |
View :
1672 |
Reply :
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ส่งค่า question_id,user_id ไปcheckว่ามีข้อมูลอยู่ในฐานแล้วหรือยังก่อน update ก็ได้นะ
ถ้ามี ก็แสดงว่าเคย vote ไปแล้ว
|
|
|
|
|
Date :
2011-08-16 16:15:54 |
By :
LuckyStar |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 03
|