• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

Problem ze skryptem HomePay pod Modern AAC

Azarael

New Member
Joined
Nov 20, 2008
Messages
21
Reaction score
0
Witam serdecznie i z góry dziękuję komuś, kto się zna na tym i poświęci kilka chwil na pomoc dla mnie ;) Będę bardzo wdzięczny.

Code:
A PHP Error was encountered

Severity: Notice

Message: Undefined index: homepay

Filename: views/dotpay.php

Line Number: 51

Taki błąd mi wyświetla po wpisaniu kodu. Rozgryzłem, że ma problem z odczytaniem configu.. nie wiem.. może zła składnia? Próbowałem już wielu rzeczy, lecz bez skutku.

To jest ta linijka
Code:
$handle=fopen("http://homepay.pl/sms/check_code.php?usr_id=681&acc_id=".(int)($config['homepay'][$usluga]['acc_id']).".&code=".$code,'r');

Mój kod homepay.php
Code:
<?PHP  
require("config.php"); 
$ots = POT::getInstance(); 
$ots->connect(POT::DB_MYSQL, connection()); 
$SQL = $ots->getDBHandle(); 
$config['server']['serverName']='Astalath.pl'; 
####################       CONFIG      ###################################################  
#aktywacja homepay, wartosci: true / false  
$config['homepay'] = array();  
$config['homepay_active'] = true;  
$config['homepay_active_sms'] = true; #active homepay sms system?  
$config['homepay_active_transfer'] = true; #active homepay transfer system?  
# przykladowy konfig dla SMS  
$config['homepay'][1]['acc_id']=3052;  
$config['homepay'][1]['addpoints']=10;  
$config['homepay'][1]['sms_number']="7355";  
$config['homepay'][1]['type']="sms";  
$config['homepay'][1]['sms_text']="HPAY.HYBRID30";  
$config['homepay'][1]['sms_cost']="10.98 zl brutto";  

# przykladowy konfig dla przelewu  
$config['homepay'][2]['acc_id']=1176;  
$config['homepay'][2]['addpoints']=10;  
$config['homepay'][2]['link']="https://ssl.homepay.pl/wplata/1-HYBRID500";  
$config['homepay'][2]['type']="przelew";  
$config['homepay'][2]['przelew_text']="HYBRID500";  
$config['homepay'][2]['przelew_cost']="10.00 zl brutto";  
#################################################################################  
# aktywacja uslugi daopay  
$config['daopay'] = array();  
$config['daopay_active'] = false; #true/false  
# przykład configu dla daopay  
$config['daopay'][21]['appcode'] = 12345; #  
$config['daopay'][21]['prodcode'] = 'NAZWAUSLUGI'; #  
$config['daopay'][21]['addpoints'] = '100'; #  
$config['daopay'][21]['cost'] = "1 euro inc. VAT"; #  
#################################################################################  
function save_trans($file, $acc, $code)  
{  
     $hak = fopen($file, "a");  
     fwrite($hak, $code.'='.$acc.'  
');  
     fclose($hak);  
}  

function check_code_homepay($code,$usluga)  
{  
global $config;  
if(!preg_match("/^[A-Za-z0-9]{8}$/",$code)) return 0;  
$code=urlencode($code);  
$handle=fopen("http://homepay.pl/sms/check_code.php?usr_id=681&acc_id=".(int)($config['homepay'][$usluga]['acc_id']).".&code=".$code,'r'); 

$status=fgets($handle,8);  
fclose($handle);  
return $status;  
}  

function check_tcode_homepay($code,$usluga)  
{  
global $config;  
if(!preg_match("/^[A-Za-z0-9]{8}$/",$code)) return 0;  
$code=urlencode($code);  
$handle=fopen("http://homepay.pl/API/check_tcode.php?acc_id=".(int)($config['homepay'][$usluga]['acc_id'])."&code=".$code,'r');  

$status=fgets($handle,8);  
fclose($handle);  
return $status;  
}  

function add_points(OTS_Account $account, $number_of_points)  
{  
     if($account->isLoaded())  
     {  
          $account->setCustomField('premium_points', ($account->getCustomField('premium_points')+$number_of_points));  
          return true;  
     }  
     else  
          return false;  
}  


if(isset($_POST['submit'])){ 
  

#################################################################################  
$sms_type = (int) $_POST['sms_type'];  
$posted_code = trim($_POST['code']);  
$to_user = trim($_POST['to_user']);  

#################################################################################  
$errors = array(); 
if(!empty($to_user))  
{  
     if(is_numeric($to_user))  
     {  
          $account = new OTS_Account();  
          $account->find($to_user);  
     }  
     else  
     {  
          $player = new OTS_Player();  
          $player->find($to_user);  
          if($player->isLoaded())  
               $account = $player->getAccount();  
          else  
               $account = new OTS_Account();  
     }  
       
     if(empty($posted_code))  
          $errors[] = 'Prosze wpisac kod z SMSa/przelewu.';  
           
     if(!$account->isLoaded())  
          $errors[] = 'Konto/konto postaci o podanym nicku nie istnieje.';  
           
     
           
          if(count($errors) == 0)  
          {  
          if($config['homepay'][$sms_type]['type']=="sms")  
               $code_info = check_code_homepay($posted_code,$sms_type);  
               else  
               $code_info = check_tcode_homepay($posted_code,$sms_type);  
                 
                 
               if($code_info != "1")  
                    $errors[] = 'Podany kod z SMSa/przelewu jest niepoprawny lub wybrano zla opcje SMSa/przelewu.';  
               else  
               {  
                    if(add_points($account, $config['homepay'][$sms_type]['addpoints']))  
                    {                           
                           
                         echo '<h1><font color="red">Dodano '.$config['homepay'][$sms_type]['addpoints'].' punktow premium do konta: '.$to_user.' !</font></h1>';  
                    }  
                    else  
                         $errors[] = 'Wystapil blad podczas dodawania punktow do konta, sproboj ponownie.';  
               }  
          }  
     }  

if(count($errors) > 0)  
{  
     echo 'Wystapily bledy:';  
     foreach($errors as $error)  
          echo '<br />* '.$error;  
     echo '<hr /><hr />';  
}  
} 
if($config['homepay_active_sms'])  
{  
     echo '<table><tr><td><h2 align="center">SMS</h2>Prosimy zapoznać się z regulaminem świadczonych usług zamieszczonym na dole tej strony.<br/><br/>';  
     foreach($config['homepay'] as $sms)  
          if($sms['type'] == 'sms')  
               echo '<b>* Na numer <font color="green">'.$sms['sms_number'].'</font> o tresci <font color="green"><b>'.$sms['sms_text'].'</b></font> za <font color="green"><b>'.$sms['sms_cost'].'</b></font>, a za kod dostaniesz <font color="green"><b>'.$sms['addpoints'].'</b></font> punktow premium.</b><br/>';  
     echo '</td></tr></table><br />';  
}  
if($config['homepay_active_transfer'])  
{  
     echo '<table><tr><td><h2 align="center">Przelew</h2>Prosimy zapoznać się z regulaminem świadczonych usług zamieszczonym na dole tej strony.<br/><br/>';  
     foreach($config['homepay'] as $przelew)  
          if($przelew['type'] == 'przelew')  
               echo '<b>* Adres - <a href="'.$przelew['link'].'"><font color="green">'.$przelew['link'].'</font></a> - koszt <font color="green"><b>'.$przelew['przelew_cost'].'</b></font>, a za kod dostaniesz <font color="green"><b>'.$przelew['addpoints'].'</b></font> punktow premium.</b><br/>';  
     echo '</td></tr></table><br />  
     ';  
}  
?> 
<form method="post" action="" id="enter_code"><table> 
<tr><td><b>Nick postaci lub numer konta: </b></td><td><input type="text" size="20" value="<?$to_user?>" name="to_user" /></td></tr> 
<tr><td><b>Kod z SMSa: </b></td><td><input type="text" id="code" size="20" value="<?$posted_code?>" name="code" /></td></tr> 
<tr><td><b>Typ wyslanego SMSa: </b></td><td><select name="sms_type"> 
<? 
foreach($config['homepay'] as $id => $sms)  
     if($sms['type'] == 'sms')  
          echo '<option value="'.$id.'">numer '.$sms['sms_number'].' - kod '.$sms['sms_text'].' - SMS za '.$sms['sms_cost'].'</option>';  
     elseif($przelew['type'] == 'przelew')  
          echo '<option value="'.$id.'">przelew - kod '.$przelew['przelew_text'].' - za '.$przelew['przelew_cost'].'</option>';  
echo '</select></td></tr>';  
?> 
<tr><td></td><td><input type="submit" name='submit' value="Sprawdz" /></td></tr></table></form></br></br> 

<h2 align="center"><font color="green">Po zakupie itemków proszę przelogować postać, aby zapobiec utracie rzeczy.</font></h2></td></tr></table><br />  
<table><tr><td>  
<center><img border="0" src="http://homepay.pl/theme/default/image/logo/homepay_logo26.png"></center><br />  
<hr>  
Serwis SMS obslugiwany przez <a href="http://www.homepay.pl" target="_blank">Homepay.pl</a><br />  

     Regulamin: <a href="http://homepay.pl/regulamin/regulamin_sms_premium/" target="_blank">http://homepay.pl/regulamin/regulamin_sms_premium/</a><br />  
     Usluga dostepna w sieciach: Era, Orange, Play, Plus GSM.<br/>  
<hr>  
<b>Regulamin usług dostępnych na stronie:</b>  
<br/>  
<b>1.a)</b> Kiedy Twój poprawnie wysłany SMS zostanie dostarczony otrzymasz SMS zwrotny z kodem.  
<br/>  
<b>1.b)</b> Kiedy Twój przelew zostanie zaksięgowany (z kart kredytowych i bankow internetowych z listy, jest to kwestia paru sekund) na e-mail który podałeś w formularzu otrzymasz kod.  
<br/>  
<b>2.</b> Po otrzymaniu kodu SMS/przelewu i wpisaniu go wraz z nazwą konta w powyższym formularzu, na serwerze Astalath.pl podane konto zostanie automatycznie doładowane o okresloną ilość <b>punktów premium</b> które nastepnie moga byc zamienione na wirtualne przedmioty w grze Open Tibia Serwer zwaną <b>Astalath.pl</b>.  
<br/>  
<b>3.</b> Do pełnego skozystania z usługi wymagana jest przeglądarka internetowa oraz połączenie z siecią Internet.  
<br/>  
<b>4.</b> <b>Astalath.pl</b> nie odpowiada za źle wpisane tresci SMS.  
<br/>  
<b>5.</b> W razie problemów z działaniem usługi należy kontaktować się z <a href="mailto:[email protected]">[email protected]</a>  
</td></tr></table>
 
To jest skrypt przerobiony z DotPay'a, tylko nazwa pliku to dotpay.php, nie zmienia to postaci rzeczy :p Pozdrawiam.
 
hehe, no, ale tu wygląda dobrze, bo pisze, że brak indeksu 'homepay' w tablicy, a jedyna tablica z jakiej pobierasz wartość to $config...
więc jest git, a spróbuj do funkcji dodać parametr $config tzn.
PHP:
function check_code_homepay($code,$usluga)
na:
PHP:
 function check_code_homepay($code,$usluga, $config)

bo mi ten plik na serwerze błędu nie wyrzuca. o ; apache?
 
Więc dlaczego ten błąd mi wyskakuje i nie sprawdza tego kodu :p?
Dodałem to $config ale dalej to samo.. Doszedłem do wniosku, że on nie może wyczytać z configu moje aac_id.. dziwne to. Proszę o pomoc.
 
Back
Top Bottom