Autor | Zpráva | ||
---|---|---|---|
Spoless Profil |
#1 · Zasláno: 24. 11. 2014, 20:23:39
Zdravím,
mám bránu na mobilniplatby, téměř vše funguje, ale někde je chyba ve scriptu, nedokážete prosím poradit kde? Díky. - Nepřidá to mince na účet Script: <? require('./config.inc.php'); //DIBI LAYER require('./config.inc.php'); // DIBI připojení $values = array( 'PRICE' => $_GET['price'], 'OPERATOR' => $_GET['operator'], 'NICK' => $_GET['text'] ); if(!$values['NICK']){ echo'Litujeme! Asi jste odeslal(a) chybnou SMS! Obratte se na podporu!'; } else{ if($values['PRICE'] == '3.00'){ $price = 3; $coins = 1; $completed = 1; } elseif($values['PRICE'] == '50.00'){ $price = 50; $coins = 40; $completed = 1; } elseif($values['PRICE'] == '79.00'){ $price = 79; $coins = 70; $completed = 1; } elseif($values['PRICE'] == '99.00'){ $price = 99; $coins = 90; $completed = 1; } elseif($values['PRICE'] == '149.00'){ $price = 149; $coins = 120; $completed = 1; } elseif($values['PRICE'] == '99.00'){ $price = 99; $coins = 150; $completed = 1; } if($completed == 1){ $nameQuery = dibi::query('SELECT * FROM `ren_account`.`account` WHERE `login` LIKE %s', $values['NICK']); $nameOpen = $nameQuery->fetch(); $newCoins = $nameOpen->coins+$coins; dibi::query('UPDATE `ren_account`.`account` SET ', array('coins' => $newCoins), 'WHERE login = %s', $nameOpen->login); echo'Na ucet '.$values['NICK'].' bylo pripsano ' .$coins. ' minci! Cena SMS byla ' .$price. ' KC!'; } else{ echo'Litujeme! Asi jste odeslal(a) chybnou SMS! Obratte se na podporu!'; } } ?> Díky :) |
||
Alphard Profil |
#2 · Zasláno: 24. 11. 2014, 21:46:23
Nebyla by nějaká nápověda? Co to vypíše apod.?
|
||
David1234 Profil * |
#3 · Zasláno: 25. 11. 2014, 10:17:02
Tak jako první chybu vidím toto:
echo'Na ucet '.$values['NICK'].' bylo pripsano ' .$coins. ' minci! Cena SMS byla ' .$price. ' KC!'; Chybějící mezera mezi apostrofem a příkazem echo. |
||
Micruss Profil |
#4 · Zasláno: 25. 11. 2014, 12:40:29
Tak nějak mi vrtá hlavou proč je 2x require na ten stejný soubor
|
||
Spoless Profil |
#5 · Zasláno: 25. 11. 2014, 19:26:14
Script jde přes službu Mobilniplatby. cz.
Při emulaci typu Nový script, script odpovídá podle specifikací, ale jako odpověď hlásí " Litujeme! Asi jste odeslal(a) chybnou SMS! Obratte se na podporu! ". Při volbě Starý script hlásí chybu, že script vrací odpověď v nesprávném formátu a k tomu odkazuje na řádek č.44 |
||
Fisir Profil |
#6 · Zasláno: 25. 11. 2014, 20:05:43
Reaguji na Davida1234:
To ničemu nevadí. Rozházené (nebo vynechané) bílé znaky v PHP téměř nikdy nezpůsobují žádnou neplechu (neplatí třeba pro ukončení Heredoc). |
||
Kubo2 Profil |
#7 · Zasláno: 25. 11. 2014, 20:11:26
David1234:
Myslím, že práve toto bežným verziám PHPka nerobí problém. |
||
Davex Profil |
Spoless:
Jaké hodnoty jsou uloženy v $_GET['price'] a $_GET['text'] při zavolání skriptu?
Jinak ten skript vypadá opravdu hrozně. Nevadí, že si uživatel může připsat zadarmo neomezeně mincí? |
||
Spoless Profil |
Script se vyvolá odeslalnim sms ve tvaru PLATBA ISMINCE jmenohrace Na uvedene cislo. Jsem zacatecnik v php a teprv se s nim ucim.
Omluvte mou diaktriku, pisi z mobilu. |
||
Alphard Profil |
#10 · Zasláno: 26. 11. 2014, 16:17:30
Přece to můžete otestovat i bez SMS, stačí ten script zavolat a přímo předat do url potřebné parametry.
|
||
Spoless Profil |
#11 · Zasláno: 26. 11. 2014, 17:49:59
Ano, testoval jsem ho, ale jak jsem již popisoval.. Není zcela bez chyby.
Za opravu s prosíkem bych byl vděčný, jsem pouhý začátečník. |
||
Časová prodleva: 6 dní
|
|||
czechiaa Profil |
#12 · Zasláno: 2. 12. 2014, 10:11:58
Ale vždyť ti tady radí, jak to udělat. Jednoduše si zavolej domena.cz/odkaz/na/script?price=99.00&operator=nejakOperator&text=obsahTextu
Sám píšeš, že ti to spadne na tom, že if(!$values['NICK']){ echo'Litujeme! Asi jste odeslal(a) chybnou SMS! Obratte se na podporu!'; } |
||
Časová prodleva: 10 let
|
0