Script sms platby prosím pomoc!!

Technická podpora pro naše hostované weby
Message
Autor
Grepy
Příspěvky: 1
Registrován: 13 led 2014, 17:13
Reputation: 0

Script sms platby prosím pomoc!!

#1 Příspěvekod Grepy » 13 led 2014, 17:20

Zdravím, prosim vás já už nevím čím to může být.Když tento script testuju na mobilniplatby.cz přes emulátor tak mi to přičte mince uplně normálně.A když odešlu sms PM název brány a ID účtu na který chci přičíst mince.Tak mi to prostě žádný mince nepřičte a sebere mi to peníze a napíše:Litujeme, ale zadali jste neplatne ID. Kod transakce:335498432 přitom když to testuju tak to funguje.


Kód: Vybrat vše

<?php
// Skript pro příjem premium SMS z mobilniplatby.cz
// Navrženo pro Metin 2
// Autor: Vojtěch 'Heretiiik' M.
// Poslední úprava: 11.1.2014
//
// SQL pro vytvoření logu
/*
CREATE TABLE `sms_log` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `uid` varchar(128) DEFAULT NULL,
  `country` varchar(32) DEFAULT NULL,
  `operator` varchar(32) DEFAULT NULL,
  `phone` varchar(64) DEFAULT NULL,
  `shortcode` varchar(32) DEFAULT NULL,
  `sms` varchar(128) DEFAULT NULL,
  `pokus` int(11) DEFAULT NULL,
  `timestamp` varchar(128) DEFAULT NULL,
  `vysledek` varchar(128) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB;
*/
//
//
// Načtení proměnných z URL do proměnných
$timestamp = $_GET['timestamp'];
$phone = $_GET['phone'];
$text = $_GET['sms'];
$shortcode = $_GET['shortcode'];
$country = $_GET['country'];
$operator = $_GET['operator'];
$pokus = $_GET['att'];
$uid = $_GET['id'];

// Připojení k databázi, údaje jsou v přiloženém souboru
include ('db_info.php');
mysql_connect($dbserver, $dbuser, $dbpw);
mysql_select_db($dbname);

// Zapsání do logu
$log_query = "INSERT INTO sms_log (uid, country, operator, phone, shortcode, sms, pokus, timestamp) VALUES ('$uid', '$country', '$operator', '$phone', '$shortcode', '$text', '$pokus', '$timestamp')";
$result1 = mysql_query($log_query);

// Kontrola zda SMS přišla ze správného čísla
$allowed_shortcode = array('9033350', '9033379', '9033399', '90333');
if (in_array($shortcode,$allowed_shortcode)) {
 
  // Získání ID účtu
  //$sms = substr($text, 18);
 
  // Kontola zda id existuje
  $sql_id_exist = "SELECT login as ident FROM player.account";
  $existence = mysql_query($sql_id_exist);
  $existujici = array();
  while($row=mysql_fetch_assoc($existence)) {
     $existujici[]=$row['ident'];
  }

  // Připsání mincí pokud ID existovalo
  if(in_array($sms, $existujici)) {
    // Spočítání počtu nových mincí
    $get_mince_query = "SELECT * FROM player.account WHERE login='$sms' LIMIT 1";
    $mince_a_query = mysql_query($get_mince_query);
    while($row2 = mysql_fetch_array($mince_a_query)) {
       $mince_a = $row2['coins'];
    }
    // Vypočítání přičítaných mincí dle shortcode
    switch($shortcode) {
      case '9033350':
        $mince_b = 50;
        break;
      case '9033379':
        $mince_b = 80;
        break;
      case '9033399':   
        $mince_b = 100;
        break;
      case '90333':   
        $mince_b = 300;
        break;
      default:
        $mince_b = 0;
    }
    $mince_c = $mince_a + $mince_b;

    // Vložení mincí
    $mince_update = "UPDATE player.account SET coins='$mince_c' WHERE login='$sms'";
    $result2 = mysql_query($mince_update);
   
    //Napsání odpovědí, vše proběhlo správně
    $response = "Dekujeme za Vas dar. Kod transakce: $uid"; 
    Header ("Content-type:text/plain");
    Header ("Content-length".strlen($response));
    echo $response;
    $vysledek = "OK";
  } else {
    // Odpověd při špatně zadeném ID
    $response = "Litujeme, ale zadali jste neplatne ID. Kod transakce: $uid"; 
    Header ("Content-type:text/plain");
    Header ("Content-length".strlen($response));
    echo $response;
    $vysledek = "BAD ID";   
  }
} else {
  // Odpověd při nepovolém čísle
  $response = "Litujeme, ale pouzil jste spatne cislo. Kod transakce: $uid"; 
  Header ("Content-type:text/plain");
  Header ("Content-length".strlen($response));
  echo $response;
  $vysledek = "WRONG NUMBER";   
}
// Zapsání výsledku do logu
$post_log = "UPDATE sms_log SET vysledek='$vysledek' WHERE uid='$uid'";
$result3 = mysql_query($post_log);
?>

Uživatelský avatar
zdenda204
Příspěvky: 3617
Věk: 36
Registrován: 23 kvě 2012, 21:38
Reputation: 0

Re: Script sms platby prosím pomoc!!

#2 Příspěvekod zdenda204 » 13 led 2014, 17:39

Zkontroluj si komentáře, jeden ti zakomentoval proměnnou.
A jsme podpora pro servery hostované u hostingu FakaHeda.
Pokud se nepletu tak Metin se tu nehostuje a tudíž nemáš právo na podporu.

//LOCK
Přijímám zakázky na skripty/pluginy v PHP/Javě za malý poplatky! A kup mi sušenku :) Obrázek Obrázek
⇨Projekt Market⇦


Zpět na „Web hosting“

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 2 hosti