ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comพัฒนาเว็บไซต์Programmingรบกวนเซียน php ช่วยหน่อยครับมีสองฟังก์ชั่นคล้ายกันอยากรวมแต่ ลองแล้ว Error
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: รบกวนเซียน php ช่วยหน่อยครับมีสองฟังก์ชั่นคล้ายกันอยากรวมแต่ ลองแล้ว Error  (อ่าน 547 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
adjobb
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 320
ออฟไลน์ ออฟไลน์

กระทู้: 2,874



ดูรายละเอียด
« เมื่อ: 22 กันยายน 2015, 21:31:56 »

ระบบนี้เป็น api ของ tmtopup ไว้สำหรับ เติมเครดิต และ วันใช้งาน vip
ผมอยากจะเอาเจ้าสองตัวนี้มารวมกันแต่ไม่ให้ฟังก์ชั่นมันชนกัน บางฟังก์ชั่นมันใช้รวมกันได้
เพราะด้วยข้อจำกัด tmtopup มันรัน api ได้แค่ลิ้งค์เดียว เลยอยากจะเอา เติมเครดิต กับ วันใช้งาน vip มาโมรวมกันแต่ไม่ค่อยเซียนเลยมาขอคำแนะนำพี่ๆหน่อยครับ

ไม่รู้ว่าผมอธิบายเข้าใจไหม  Cry

Code 1 เติมเครดิต
โค๊ด:
<?php

require_once('config/config_global.php');
require_once(
'AES.php');

if(isset(
$_config['server']['id']) == false)
{
$_config['server']['id'] = 1;
}

mysql_connect($_config['db'][$_config['server']['id']]['dbhost'],$_config['db'][$_config['server']['id']]['dbuser'],$_config['db'][$_config['server']['id']]['dbpw']) or die('ERROR|DB_CONN_ERROR|' mysql_error());
mysql_select_db($_config['db'][$_config['server']['id']]['dbname']) or die('ERROR|DB_SEL_ERROR|' mysql_error());

// กำหนด API Passkey
define('API_PASSKEY''112233');

// กำหนด field , จำนวน credit : @begin
$_TMN['50']['extcredits2'] = 50;

$_TMN['90']['extcredits2'] = 100;

$_TMN['150']['extcredits2'] = 150;

$_TMN['300']['extcredits2'] = 300;

$_TMN['500']['extcredits2'] = 500;

$_TMN['1000']['extcredits2'] = 1000;


// กำหนด field , จำนวน credit : @end

if($_SERVER['REMOTE_ADDR'] == '203.146.127.115' && isset($_GET['request']))
{
$aes = new Crypt_AES();
$aes->setKey(API_PASSKEY);
$_GET['request'] = base64_decode(strtr($_GET['request'], '-_,''+/='));
$_GET['request'] = $aes->decrypt($_GET['request']);
if($_GET['request'] != false)
{
parse_str($_GET['request'],$request);
$request['Ref1'] = base64_decode($request['Ref1']);

// discuz x : @begin
$result mysql_query('SELECT `uid` FROM `' $_config['db'][$_config['server']['id']]['tablepre'] . 'common_member` WHERE `username`=\'' mysql_real_escape_string($request['Ref1']) . '\' LIMIT 1') or die(mysql_error());
if(mysql_num_rows($result) == 1)
{
// initiate extcredit fields : @begin
$extcredit_fields '';
$extcredit_logfields '';
$request['cardcard_amount'] = round($request['cardcard_amount']);
foreach($_TMN[$request['cardcard_amount']] as $key=>$val)
{
if(!empty($extcredit_fields))
{
$extcredit_fields .= ',';
}
$extcredit_fields .= '`' $key '`=`' $key '`+' $val;
$extcredit_logfields .= ',`' $key '`=' $val;
}
// initiate extcredit fields : @end
$row mysql_fetch_assoc($result);
if(mysql_query('UPDATE `' $_config['db'][$_config['server']['id']]['tablepre'] . 'common_member_count` SET ' $extcredit_fields ' WHERE `uid`=' mysql_real_escape_string($row['uid']) . ' LIMIT 1') == false)
{
echo 'ERROR|MYSQL_UDT_ERROR|' mysql_error();
}
else
{
mysql_query('INSERT INTO `' $_config['db'][$_config['server']['id']]['tablepre'] . 'common_credit_log` SET `uid`=' $row['uid'] . ',`operation`=\'RCV\',`relatedid`=' $row['uid'] . ',`dateline`=UNIX_TIMESTAMP()' $extcredit_logfields);
echo 'SUCCEED|UID=' $row['uid'];
}
}
else
{
echo 'ERROR|INCORRECT_USERNAME';
}
// discuz x : @end

}
else
{
echo 'ERROR|INVALID_PASSKEY';
}
}
else
{
echo 'ERROR|ACCESS_DENIED';
}

?>




Code 2 เติมวันใช้งาน vip
โค๊ด:
<?php

require_once('config/config_global.php');
require_once(
'AES.php');

if(isset(
$_config['server']['id']) == false)
{
$_config['server']['id'] = 1;
}

mysql_connect($_config['db'][$_config['server']['id']]['dbhost'],$_config['db'][$_config['server']['id']]['dbuser'],$_config['db'][$_config['server']['id']]['dbpw']) or die('ERROR|DB_CONN_ERROR|' mysql_error());
mysql_select_db($_config['db'][$_config['server']['id']]['dbname']) or die('ERROR|DB_SEL_ERROR|' mysql_error());

// กำหนด API Passkey
define('API_PASSKEY''112233');

// กำหนด groupid ของ VIP
define('VIP_GROUPID''0');

// กำหนด adminid ของ VIP
define('VIP_ADMINID''-1');

// กำหนด field , จำนวน credit : @begin
$_TMN['50']['vip'] = 5;
$_TMN['90']['vip'] = 10;
$_TMN['150']['vip'] = 15;
$_TMN['300']['vip'] = 30;
$_TMN['500']['vip'] = 50;
$_TMN['1000']['vip'] = 100;

// กำหนด field , จำนวน credit : @end

if($_SERVER['REMOTE_ADDR'] == '203.146.127.115' && isset($_GET['request']))
{
$aes = new Crypt_AES();
$aes->setKey(API_PASSKEY);
$_GET['request'] = base64_decode(strtr($_GET['request'], '-_,''+/='));
$_GET['request'] = $aes->decrypt($_GET['request']);
if($_GET['request'] != false)
{
parse_str($_GET['request'],$request);
$request['Ref1'] = base64_decode($request['Ref1']);

// discuz x : @begin
$result mysql_query('SELECT `uid`,`groupexpiry` FROM `' $_config['db'][$_config['server']['id']]['tablepre'] . 'common_member` WHERE `username`=\'' mysql_real_escape_string($request['Ref1']) . '\' LIMIT 1') or die(mysql_error());
if(mysql_num_rows($result) == 1)
{
$row mysql_fetch_assoc($result);
// initiate extcredit fields : @begin
if($row['groupexpiry'] < time())
{
$groupexpiry time() + ($_TMN[$request['cardcard_amount']]['vip']*86400);
}
else
{
$groupexpiry $row['groupexpiry'] + ($_TMN[$request['cardcard_amount']]['vip']*86400);
}
$groupterms = array();
$groupterms['main'] = array('time' => $groupexpiry);
$groupterms['ext'][VIP_GROUPID] = $groupexpiry;
$grouptermsnew addslashes(serialize($groupterms));
// initiate extcredit fields : @end
if(mysql_query('UPDATE `' $_config['db'][$_config['server']['id']]['tablepre'] . 'common_member` SET groupid=' VIP_GROUPID ',adminid=' VIP_ADMINID ',groupexpiry=' $groupexpiry ' WHERE uid=' $row['uid']) == false)
{
echo 'ERROR|MYSQL_UDT_ERROR|' mysql_error();
}
else
{
mysql_query('UPDATE `' $_config['db'][$_config['server']['id']]['tablepre'] . 'common_member_field_forum` SET groupterms=\'' $grouptermsnew '\' WHERE uid=' $row['uid']);
echo 'SUCCEED|UID=' $row['uid'];
}
}
else
{
echo 'ERROR|INCORRECT_USERNAME';
}
// discuz x : @end

}
else
{
echo 'ERROR|INVALID_PASSKEY';
}
}
else
{
echo 'ERROR|ACCESS_DENIED';
}

?>
« แก้ไขครั้งสุดท้าย: 22 กันยายน 2015, 21:32:44 โดย adjobb » บันทึกการเข้า
adjobb
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 320
ออฟไลน์ ออฟไลน์

กระทู้: 2,874



ดูรายละเอียด
« ตอบ #1 เมื่อ: 22 กันยายน 2015, 21:38:50 »

อันนี้มาของโค้ดนี้ที่ผมไป generator code มา

 https://www.tmtopup.com/php_generator/discuz_extcredits.php

https://www.tmtopup.com/php_generator/discuz_vip.php
บันทึกการเข้า
9wong
ก๊วนเสียว
*

พลังน้ำใจ: 35
ออฟไลน์ ออฟไลน์

กระทู้: 234



ดูรายละเอียด
« ตอบ #2 เมื่อ: 22 กันยายน 2015, 21:58:38 »

งง หน่อยๆครับ ถ้าตามความเข้าใจผม คือ ให้ลูกค้าเลือก ใช่ไหมครับว่า จะเติมวัน หรือเติมแต้ม

โดยการเติมเงินผ่าน tmtopup  ส่วนนี้จะมี ref 3 ช่องครับ ส่วนใหญ่ ref3 ไม่ค่อยได้ใช้อะไร ก็เอามาเป็นค่าสำหรับ เลือกว่า จะประมวลผล แบบ เติมวันหรือเติมแต้ม

เช่น แนบ ref3 ไป ว่าเป็น point หรือ day  แล้วอาจจะใช้ switch case เลือกว่า ค่าของตัวแปรที่เข้ามาเป็นอะไร ครับ

โค๊ด:
switch ($ref3) {
    case 'point':
บลาๆ
        break;
case 'day':
บลาๆ
        break;
default:
บลาๆ

        break;

}

ตามนี้ครับ ผิดถูก ข้ออภัยครับ  wanwan017
บันทึกการเข้า
A-LAND
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 120
ออฟไลน์ ออฟไลน์

กระทู้: 2,145



ดูรายละเอียด
« ตอบ #3 เมื่อ: 22 กันยายน 2015, 22:49:11 »

อยากบอกแต่ลืมแล้วอ่ะ เคยทำเว็บแนวนี้อยู่เขียนระบบเติม vip แบบนี้แหละ ให้เข้าระบบได้แบบออโต้ มันหลายปีมากแล้ว ตอนนี้สคริบอยู่ไหนไม่รู้ แต่คงเขียนคนละแบบโดยสิ้นเชิง  Cry
บันทึกการเข้า
หน้า: [1]   ขึ้นบน
พิมพ์