Temos pavadinimas: WordPress, Shopify ir PHPFusion programuotojų bendruomenė :: Mokėjimų sistema.

Parašė smart· 2010 Lap. 3 10:11:57
#1

Sveiki, turiu skriptą kuris yra sujungtas su ozz'o mokėjimų sistema.

Problema ta, kad kaip išsiunti žinutę, balansas mano svetainėje nepasipildo, o support'e meta klaidą:


Kreipinys: (FAILED) <a href='http://www.euroserveriai.eu/system/lib/webtopay/SMS-PAY.request.1.php?message=EUROP2+13229&amount=2&passkey=4ee0ff042cb9740d1&test=1' target='_blank'><span style='color:005C5B'>http://www.euroserveriai.eu/syst...amp;test=1</span></a>
Problema: 10 sek. TIMOUT, REDIRECT > 0 arba ERROR_REPORTING(0), bet faile yra klaida, arba failas negrąžina atsakymo 'OK' 


Mano pay.php failas:


<?php
$kaina=2;
require('../../constants.inc.php');
require(SYSTEM.'main-settings.inc.php');
require(SYSTEM.'engine.mysql-config.inc.php');
mysql_connect($MYSQL_CONFIG["mysql_hostname"], $MYSQL_CONFIG["mysql_user"], $MYSQL_CONFIG["mysql_pass"]);
mysql_select_db($MYSQL_CONFIG["mysql_dbname"]);
 
$MY_SECRET = '4ee0ff042cb974***';
 
$fail = array(
   "amount" => "Bloga suma<br />",
   "keyword" => "Blogas KEYWORD<br />",
   "uid" => "Blogas USER_ID<br />",
   "msg" => "Blogas žinutės turinys<br />",
   "fake" => "Netikras mokÄ—jimas<br />"
);
 
$err = ""; $OK = false; $userid = 0; $raktazodis = "";
if(isset($_GET['message']) && isset($_GET['amount']) && isset($_GET['passkey']))
{
   $OK = $MY_SECRET == $_GET['passkey'] ? true : false;
   if(!is_num($_GET['amount'])) $err .= $fail['amount'];
   $message = explode(" ", $_GET['message']);
 
   // $message[0] - GETVIP (RAKTAŽODIS)
   // $message[1] - 1234   (USER_ID)
   if(sizeof($message) == 2)
   {
      $raktazodis = (is_valid($message[0]) ? strtoupper($message[0]) : 0);
      if(!$raktazodis) $err .= $fail['keywork'];
      $userid = (is_num($message[1]) ? $message[1] : 0);
      if($userid == 0) $err .= $fail['uid'];
   } else
   {
      $err .= $fail['msg'];
   }
} else
{
   $err .= $fail['fake'];
}
if($OK && !$err)
{
 
$USER_ID = $userid;
$query = mysql_query("SELECT user_id FROM ".$MYSQL_CONFIG["tables_prefix"]."users WHERE user_id='".(int)$USER_ID."'");
if(mysql_num_rows($query) > 0) {
$query = mysql_query("UPDATE ".$MYSQL_CONFIG["tables_prefix"]."users SET user_balansas=user_balansas+".(($kaina/100)*$setting['procentas'])." WHERE user_id='".(int)$USER_ID."'");
echo 'Jusu balansas papildytas '.money_format('%i',(($kaina/100)*$setting['procentas'])).'LT. Aciu, kad naudojates musu paslaugomis! EuroServeriai';
} else {
echo "Toks vartotojas musu sistemoje nerastas.";
} 
 
 
} else
{
   echo $err;
}
 
// Ar tai skaiÄ&#141;ius?
function is_num($value)
{
   if (!is_array($value)) {
      return (preg_match("/^[0-9]+$/", $value));
   } else {
      return false;
   }
}
 
 
// Ar tai geras raktazodis?
function is_valid($value)
{
   if (!is_array($value)) {
      return (preg_match("/^[a-zA-Z0-9]+$/", $value));
   } else {
      return false;
   }
}
?> 

Parašė ozzWANTED· 2010 Lap. 3 12:11:33
#2

O ką gražina default pavyzdinis skriptas. Ir AR tu savo saite nusiskaitai TEST sms duomenis. Dar pabandyk tiesiogiai į naršyklę įvesti adresą, kuris parašytas prie debug. Ir pažiūrėk ar naršyklėje bus teisingas atsakymas.

Redagavo ozzWANTED· 2010 Lap. 3 13:11:54

Parašė smart· 2010 Lap. 3 13:11:57
#3

Man išmeta baltą lapą :|

Parašė ozzWANTED· 2010 Lap. 3 13:11:12
#4

Nu tai blogai. Turi išmest reikalaujamą atsakymą. Peržiūrėk kodą, kažkur klaida.

Parašė smart· 2010 Lap. 3 13:11:37
#5

Grybauju aš tam kode ryškiai, gali padėt?

Parašė ozzWANTED· 2010 Lap. 3 13:11:46
#6

Įsijunk error_reporting(E_ALL); visų pirma, arba testuok localhoste. Tai bent errorus parodys.

Parašė smart· 2010 Lap. 3 16:11:47
#7

Turiu kodą:


$query = mysql_query("UPDATE ".$db_prefix."users SET user_balansas=user_balansas+".(($_GET['amount']/100)*$procentas)." WHERE user_id='".(int)$USER_ID."'");
 
echo 'Jusu balansas papildytas '.money_format('%i',(($_GET['amount']/100)*$procentas)).'LT. Aciu, kad naudojates musu paslaugomis! EuroServeriai';
 
} else {
 
echo "Toks vartotojas musu sistemoje nerastas.";
 
} 
 


pagal viską, išsiuntus sms 2 lt turiu gaut į balansą 0.82ct, bet man prideda 0, ką daryt? :(

Redagavo smart· 2010 Lap. 3 16:11:02