[Req] Директна "pay GM" опция

DarkEvil

Active Member
Joined
Jan 29, 2011
Messages
516
Reaction score
106
Здравейте.
Обърнах форума и намерих само за WebShop, с кредити да се купува GM-Opt.

Някой или някъде, има ли такъв код като за ЗЕН-а ?
Където директно купуваш примерно с СМС 2,40 = 500,000,000 зен.

По същия начин с СМС 2,40 или повече = ГМ херо за "определено време".

Благодаря предварително!
 
ми смени само таблицата и си готов.
ако не знаеш как дай кода.
 
ти не го разбра какво иска той иска примерно за 1.20 = примерно 5 часа да има права и да се махат след това за 2.40 = примерно 15 часа и да се махат правата и така на татък и да се махат автоматично
 
ти не го разбра какво иска той иска примерно за 1.20 = примерно 5 часа да има права и да се махат след това за 2.40 = примерно 15 часа и да се махат правата и така на татък и да се махат автоматично

И да се слагат директно, не с кредити, а примерно:
СМС КОД: raisegm Player-Name
 
Добре , давам друга идея.
Праща смс-а, от там да се въвежда автоматично като отвори твой улр/не помня името на функцията.
2. Правиш custom.php?type=?&name=Browser
type > 0 sms(1.20) , 1 (2.40) , .....
После при добавянето измаш date/time , то ще ти трябва да направиш по време.
След добавянето да показва с javascript отброяване назад като времеш времето от таблицата.

Ако имам време и ми са занимава до края на седмицата може и да го почна. :D
 
  • Like
Reactions: DarkEvil
Добре , давам друга идея.
Праща смс-а, от там да се въвежда автоматично като отвори твой улр/не помня името на функцията.
2. Правиш custom.php?type=?&name=Browser
type > 0 sms(1.20) , 1 (2.40) , .....
После при добавянето измаш date/time , то ще ти трябва да направиш по време.
След добавянето да показва с javascript отброяване назад като времеш времето от таблицата.

Ако имам време и ми са занимава до края на седмицата може и да го почна. :D

Благодаря ти много, ще бъде полезно и за други хора :)
Thanks от мен :)
 
То ако някой даде един код за пресмятане на времето и за if овете които да премахват гмто е лесно :)
 
То ако някой даде един код за пресмятане на времето и за if овете които да премахват гмто е лесно :)

Набързо измислих части от кода, но не съм много сигурен дали ще стане така.
Първо си добавяме още 1 колонка в character.
Code:
alter table character add GMtime varchar(20) null
Това ще добави гм като ще запише времето до когато е платен гм статуса.
PHP:
mssql_query("update character set ctlcode='8',GMtime='".(time()+60*60*24)."' where name='$charname'");

Проверяваме дали все още е валиден гм статуса.
PHP:
$gmtime=mssql_fetch_row(mssql_query("select gmtime from character where name='$charname'"));
if(time()>$gmtime[0])mssql_query("update character set ctlcode='0' where name='$charname' and ctlcode='8'");
 
Набързо измислих части от кода, но не съм много сигурен дали ще стане така.
Първо си добавяме още 1 колонка в character.
Code:
alter table character add GMtime varchar(20) null
Това ще добави гм като ще запише времето до когато е платен гм статуса.
PHP:
mssql_query("update character set ctlcode='8',GMtime='".(time()+60*60*24)."' where name='$charname'");

Проверяваме дали все още е валиден гм статуса.
PHP:
$gmtime=mssql_fetch_row(mssql_query("select gmtime from character where name='$charname'"));
if(time()>$gmtime[0])mssql_query("update character set ctlcode='0' where name='$charname' and ctlcode='8'");


По късно ще пробвам да го събера в един код :)
 
  • Like
Reactions: DarkEvil
Набързо измислих части от кода, но не съм много сигурен дали ще стане така.
Първо си добавяме още 1 колонка в character.
Code:
alter table character add GMtime varchar(20) null
Това ще добави гм като ще запише времето до когато е платен гм статуса.
PHP:
mssql_query("update character set ctlcode='8',GMtime='".(time()+60*60*24)."' where name='$charname'");

Проверяваме дали все още е валиден гм статуса.
PHP:
$gmtime=mssql_fetch_row(mssql_query("select gmtime from character where name='$charname'"));
if(time()>$gmtime[0])mssql_query("update character set ctlcode='0' where name='$charname' and ctlcode='8'");

PHP:
<?PHP

function mssql_real_escape_string($str) { return str_replace("'","''",$str); }



$item   = mssql_real_escape_string($_REQUEST["item"]);
$fromnum  = mssql_real_escape_string($_REQUEST["fromnum"]);
$extid   = mssql_real_escape_string($_REQUEST["extid"]);

$mobio_remote_addrs = array("87.120.176.216", "194.12.244.114");

$servID  = 1101;

$db_serv = '10.0.2.10';
$db_user = 'sa';
$db_pass = 'password';
$db_name = 'MuOnline';
$gmtime = '24';



if(in_array($_SERVER['REMOTE_ADDR'], $mobio_remote_addrs)) {

	$sms_reply = 'Greshka. Spazvaite to4no instrukciite!';
	$conn = mssql_connect($db_serv, $db_user, $db_pass);
	if($conn) {
		mssql_select_db($db_name);
		$res = mssql_query("SELECT credits FROM MEMB_CREDITS WHERE memb___id='$item'");
		if(mssql_num_rows($res)>0) {
			mssql_query("UPDATE Character SET Ctlcode='8',GMTime='".(time()+60*60*24)."' where name='$item'");  
		}
		
		$res = mssql_query("SELECT GMTime FROM Character WHERE name='$item'");
		if(mssql_num_rows($res)==NULL) {

			$sms_reply = "Vie uspeshno stanahte GameMaster!!! Shte ste GM za {$gmtime} chasa .";
		}

	}
	file("http://mobio.bg/paynotify/pnsendsms.php?servID=$servID&tonum=$fromnum&extid=$extid&message=".urlencode($sms_reply));
}
?>
Значи това е кода НО този код само добавя ГМто и времето когато трябва да се махне, а за да го маха
Code:
$gmtime=mssql_fetch_row(mssql_query("select gmtime from character where name='$charname'"));
if(time()>$gmtime[0])mssql_query("update character set ctlcode='0' where name='$charname' and ctlcode='8'");
трябва да се добави като задача в SQL Job.
Не съм го тествал... Аз незнам дали ако се сложи в кода ще стане защото доколкото аз съм разбрал за да се извърши определена функция трябва да се използва... следователно ако е в кода гмто ще се махне никога :D ... ако греша и има по добър вариант.... кажете :)
 
PHP:
<?PHP

function mssql_real_escape_string($str) { return str_replace("'","''",$str); }



$item   = mssql_real_escape_string($_REQUEST["item"]);
$fromnum  = mssql_real_escape_string($_REQUEST["fromnum"]);
$extid   = mssql_real_escape_string($_REQUEST["extid"]);

$mobio_remote_addrs = array("87.120.176.216", "194.12.244.114");

$servID  = 1101;

$db_serv = '10.0.2.10';
$db_user = 'sa';
$db_pass = 'password';
$db_name = 'MuOnline';
$gmtime = '24';



if(in_array($_SERVER['REMOTE_ADDR'], $mobio_remote_addrs)) {

	$sms_reply = 'Greshka. Spazvaite to4no instrukciite!';
	$conn = mssql_connect($db_serv, $db_user, $db_pass);
	if($conn) {
		mssql_select_db($db_name);
		$res = mssql_query("SELECT credits FROM MEMB_CREDITS WHERE memb___id='$item'");
		if(mssql_num_rows($res)>0) {
			mssql_query("UPDATE Character SET Ctlcode='8',GMTime='".(time()+60*60*24)."' where name='$item'");  
		}
		
		$res = mssql_query("SELECT GMTime FROM Character WHERE name='$item'");
		if(mssql_num_rows($res)==NULL) {

			$sms_reply = "Vie uspeshno stanahte GameMaster!!! Shte ste GM za {$gmtime} chasa .";
		}

	}
	file("http://mobio.bg/paynotify/pnsendsms.php?servID=$servID&tonum=$fromnum&extid=$extid&message=".urlencode($sms_reply));
}
?>
Значи това е кода НО този код само добавя ГМто и времето когато трябва да се махне, а за да го маха
Code:
$gmtime=mssql_fetch_row(mssql_query("select gmtime from character where name='$charname'"));
if(time()>$gmtime[0])mssql_query("update character set ctlcode='0' where name='$charname' and ctlcode='8'");
трябва да се добави като задача в SQL Job.
Не съм го тествал... Аз незнам дали ако се сложи в кода ще стане защото доколкото аз съм разбрал за да се извърши определена функция трябва да се използва... следователно ако е в кода гмто ще се махне никога :D ... ако греша и има по добър вариант.... кажете :)

Did someone tested it?
 
Кода за премахването на гм-тата можеш да го сложиш в сайта където се показват всички гм-та.
 
SMS Game Master + Time

Mobio script:

PHP:
<?PHP

function mssql_real_escape_string($str) { return str_replace("'","''",$str); }



$item   = mssql_real_escape_string($_REQUEST["item"]);
$fromnum  = mssql_real_escape_string($_REQUEST["fromnum"]);
$extid   = mssql_real_escape_string($_REQUEST["extid"]);

$mobio_remote_addrs = array("87.120.176.216", "194.12.244.114");

$servID  = 3503;

$db_serv = 'localhost';
$db_user = 'sa';
$db_pass = 'sqlpassword';
$db_name = 'MuOnline';
$gmtime = '24';



if(in_array($_SERVER['REMOTE_ADDR'], $mobio_remote_addrs)) {

    $sms_reply = 'Greshka. Spazvaite to4no instrukciite!';
    $conn = mssql_connect($db_serv, $db_user, $db_pass);
    if($conn) {
        mssql_select_db($db_name);
        $res = mssql_query("SELECT CtlCode FROM Character WHERE name='$item'");
        if(mssql_num_rows($res)>0) {
            mssql_query("UPDATE Character SET CtlCode='32',GMTime='".(time()+60*60*24)."' where name='$item'");  
        }
        
        $res = mssql_query("SELECT CtlCode FROM Character WHERE name='$item'");
        if(mssql_num_rows($res)>0) {

            $sms_reply = "Vie uspeshno stanahte GameMaster!!! Shte ste GM za {$gmtime} chasa .";
        }

    }
    file("http://mobio.bg/paynotify/pnsendsms.php?servID=$servID&tonum=$fromnum&extid=$extid&message=".urlencode($sms_reply));
}
?>


SQL Query:
Code:
alter table character add GMtime varchar(20) null


GM Remove function:
PHP:
$gmtime=mssql_fetch_row(mssql_query("select gmtime from character where name='$charname'"));
if(time()>$gmtime[0])mssql_query("update character set ctlcode='0' where name='$charname' and ctlcode='8'");

INFO:
SQL Query се execute в Query Analyzer-а, за да създаде колоната за времето.
GM Remove Function се слага или като SQL Job или в скрипта за GM-тата, както дамиан каза
Кода за премахването на гм-тата можеш да го сложиш в сайта където се показват всички гм-та.


Кода е тестван освен скрипта за премахване на правата!

credits: M3,Damian & Mobio(for credits script)
 
Last edited:
  • Like
Reactions: DarkEvil