สัญญาอนุญาตของครีเอทีฟคอมมอนส์

http://i.creativecommons.org/l/by-nc-nd/3.0/th/88x31.png
ผลงานนี้ ใช้ สัญญาอนุญาตของครีเอทีฟคอมมอนส์แบบ แสดงที่มา-ไม่ใช้เพื่อการค้า-ไม่ดัดแปลง 3.0 ประเทศไทย.
อนุญาติให้นำไปโพสต์ที่อื่นได้ แต่ต้อง แสดงเครดิทของเว็บไชต์นี้ด้วยนะครับ. | ถูกใจบทความไหนกด Plus ให้ด้วยนะครับ

วันอังคารที่ 26 กรกฎาคม พ.ศ. 2554

ภาคต่อ IPB VIP MEMBER ระบบเพิ่ม VIP อัตโนมัติ

หลังจากที่เขียนบทความก่อนหน้านี้เรื่องทำระบบ VIP ใน เว็บบอร์ด IPB เหลือบไปเห็นถึงความเชื่องช้า

ของการปรับแต่งระบบ กว่าจะมานั่งเพิ่ม VIP จัดการอะไรต่างๆ มันช่างยากเหลือเกิน ถึงเขาจะมี Plugin 

สำเร็จรูปให้แล้วก็เถอะ แต่เราต้องมาคอยปรับ VIP ให้สมาชิกเองหรือนี่ แล้วเวลาเราไม่ออนเอ็ม

เราไม่เปิด คอมละ 

โอกาศได้ตังของเรามันหายไปเลย นะ อิอิ แบบว่า งก นิดหน่อย เลยคิดวิธีการยังไงดีหว้า ให้ไม่เสีย

โอกาศจากตรงนี้ ก็เลยคิดจะทำระบบ เพิ่มโดยอัตโนมัติ โดยการไปศึกษา แกะ แคะ ระบบ Plugin VIP ก่อน

และแล้ว โชคก็เข้าข้างเราเมื่อเราแอบไปเจอของดีมัน(เว่อไปแล้วมั้ง 55 ) 

ก็ได้วิธีการทำมา ก็คือต้องเขียน Script PHP ให้ไปเชื่อมต่อกับฐานข้อมูล สมาชิก ในเว็บบอร์ด

ก็เลยคันไม้ คัน มือ นำมาเสนอให้ ทุกๆท่าน ที่ติดตามอ่าน Blog ของผม ได้ อ่านและนำไปใช้งานกันครับ 


สร้าง ไฟล์ Config มาก่อน  ชื่อว่า Config.php.inc

ก็เขียนโค้ด PHP ประมาณนี้ครับ


<?php
//UTF-8 นะจะ
$sql_server = 'localhost';
$sql_database = 'database';  //ชื่อฐานข้อมูลจ๊ะ
$sql_username= 'user'; //ชื่อผู้ใช้งานฐานข้อมุลจ๊ะ
$sql_password= 'pass';//รหัสผ่านผู้ใช้งานฐานข้อมุลจ๊ะ
$sql_prefix = 'ipb1_'; //เขาเรียกอะไรหงะ ที่มันนำหน้าอะ ของ Table
$sql_tabel = 'members'; //ชื่อตาราง หรือ Table
$vip_g = '7'; //group ของ VIp ตรวจสอบให้ดีๆนะ

?>


เมื่อกี้เป็นไฟล์ Config เพื่อง่ายต่อการตั้งค่า

ที่นี้จะเป็นไฟล์ Add.php

 <?
//UTF-8 นะจะ
include("config.php.inc"); //เรียกใช้งานไฟล์ Config ที่เราสร้างไว้เข้ามา

mysql_connect($sql_server, $sql_username, $sql_password) or die("ERROR | CONNECT");
mysql_select_db($sql_database) or die("ERROR | CONNECT");
$databasetable = $sql_prefix.$sql_tabel;

if(isset($_GET['user']) && isset($_GET['email']) && isset($_GET['day']) ) //ตรวจสอบค่าที่รับมาก่อนนะ
{
$CONFIG_USER = mysql_real_escape_string($_GET['user']);
$CONFIG_EMAIL = mysql_real_escape_string($_GET['email']);
$CONFIG_DAY = mysql_real_escape_string($_GET['day']);

global $CONFIG_DAY;





$sql = "select * from $databasetable where name='$CONFIG_USER' and email='$CONFIG_EMAIL'";
$dbquery = mysql_query($sql);
$num_rows = mysql_num_rows($dbquery);

  if($num_rows==1){ //ตรวจสอบว่าพบ สมาชิกตัวนี้อยู้ใน ฐานข้อมุลไหม?
$row = mysql_fetch_array($dbquery);


$member_id = $row['member_id']; // query id ของ user ออกมา
$member_g_id = $row['member_group_id'];
global $member_id;
global $member_g_id;
$vip_status =  $row['sospromote_vip']; // query สถานะ ของ user ว่าเป็น VIP ไหม

if ($vip_status == 0) //เช็คว่าเป็น Vip อยู่แล้วหรือเปล่า
{
$vip_status =  $row['sospromote_vip_g_origem'];
if ($vip_status == 0)
{
$sql = "UPDATE $databasetable SET  sospromote_vip_g_origem='$member_g_id' ,sospromote_vip='1' ,sospromote_vip_dias='$CONFIG_DAY' ,member_group_id ='$vip_g' WHERE member_id='$member_id'";
mysql_query($sql);
echo "STATUS | SUCCESS";
}
else
{
$dayinrow = $row['sospromote_vip_dias'];
$sql = "UPDATE $databasetable SET  sospromote_vip='1' ,sospromote_vip_dias='$CONFIG_DAY'+'$dayinrow',member_group_id ='$vip_g' WHERE member_id='$member_id'";
mysql_query($sql);
echo "STATUS | SUCCESS";
}
}

else //ถ้าเป็น
{

if($member_g_id == $vip_g) //เช็คว่า  group Member ตรงกะ group ที่เราตั้งไว้ใน ไฟล์ Config หรือเปล่า
{


$dayinrow = $row['sospromote_vip_dias'];
$sql = "UPDATE $databasetable SET sospromote_vip_dias='$CONFIG_DAY'+'$dayinrow' WHERE member_id='$member_id'";  //เพิ่มเฉพาะวันให้มันพอ
mysql_query($sql);
echo "STATUS | SUCCESS";
}
else
{
$dayinrow = $row['sospromote_vip_dias'];
$sql = "UPDATE $databasetable SET  sospromote_vip='1' ,sospromote_vip_dias='$CONFIG_DAY'+'$dayinrow',member_group_id ='$vip_g' WHERE member_id='$member_id'";
mysql_query($sql);
echo "STATUS | SUCCESS";
}

}

  }

  else
  {
  echo "ERROR | MEMBER" ;  // หากไม่มี User ในฐานข้อมูล
// อาจจะเพิ่ม Function ในการ เก็บข้อมูล ผู้ใช้ไว้ด้วย บางทีมันมาท้วง หากเติมแล้วไม่เข้า User มัน เราจะได้ตรวจสอบได้ครับ
  }
}
else
{
echo "ERROR | REQUEST" ; //หากไม่พบ  query string ที่ต้องการ
}

?>



อัพโหลดขึ้นโฮสต์ เดียวกันกับ ที่ติดตั้ง IPB โลดครับ 

การใช้งานในไฟล์นี้ ก็ ใช้งาน แบบนี้ครับ Add.php?user=ชื่อผู้ใช้งานในเว็บบอร์ด&email=อีเมลล์ของสมาชิกท่านนี้ที่ได้สมัครใช้งาน&day=วันที่ต้องการเพิ่มครับ

ระบบนี้สามารถดัดแปลงไปใช้งานเป็นระบบตัดบัตร True money ได้เลยนะครับ แบบว่าเติมปุ๊ปถ้าบัตรถูกต้อง ก็ไปเพิ่มวันใช้งาน หรือ เพิ่ม สมาชิกให้เป็น Vip เลย ไม่ต้องมานั่งรอ Admin ไปเพิ่มครับ

สบายไหมละครับ วีโก้เลยเห็นไหม (จิ๊บๆ)


เขียนโดย Oneintel 
อนุญาติให้นำไปโพสต์ที่อื่นได้ แต่ต้อง แสดงเครดิทของเว็บไชต์นี้ด้วยนะครับ.

1 ความคิดเห็น: