خب شما لطفا سورس ماژول رو مشاهده کنید ... فکر میکنم یک مشکلی داخل سورس هست ...
یک دکمه با اسم : پرداخت " داخل سورس هست :
مشاهده کنید :
کد PHP:
<?php
function jaypal_config() {
    
$configarray = array(
     
"FriendlyName" => array("Type" => "System""Value"=>" بانک پاسارگاد - جی پال "),
     
"jcard" => array("FriendlyName" => "شماره کارت شما در جی پال""Type" => "text""Size" => "0", ),
     
"jemail" => array("FriendlyName" => "ایمیل شما در جی پال""Type" => "text""Size" => "0", ),
     
"jpassword" => array("FriendlyName" => "پسوورد شما در جی پال""Type" => "text""Size" => "0", ),
     
"Currencies" => array("FriendlyName" => "Currencies""Type" => "dropdown""Options" => "Rial,Toman", ),
     
"jmode" => array("FriendlyName" => "نوع درگاه اختصاصی <BR> درگاه پرداخت اینترنتی اختصاصی - درصدی - سمت فروشنده = pga <BR> درگاه پرداخت اینترنتی اختصاصی - درصدی - سمت خریدار = pgb <BR> درگاه پرداخت اینترنتی اختصاصی - اجاره ای = pgc ""Type" => "dropdown""Options" => "pga,pgb,pgc", ),
     );
    return 
$configarray;
}

function 
jaypal_link($params) {

    
$jCard $params['jcard'];
    
$jEmail $params['jemail'];
    
$jPassword $params['jpassword'];
    
$currencies $params['Currencies'];
    
$jMode $params['jmode'];
    
    
$invoiceid $params['invoiceid'];
    
$description $params["description"];
    
$amount $params['amount'];
    
$amount strtok($amount,'.');
    if(
$currencies == 'Toman')
        
$amount $amount*10;
    
$currency $params['currency'];
    
    
$companyname $params['companyname'];
    
$systemurl $params['systemurl'];
    
$currency $params['currency'];
    
    
$callbackURL $systemurl '/modules/gateways/callback/jaypal.php?invoiceNumber=' $invoiceid '&amount=' $amount;
    
    
$data getJayPal($jMode$jCard$jEmail$jPassword$amount$invoiceid$callbackURL);
    
    if(
strpos($data'^')) {
        
$dataarray explode ('^',$data);
        
$return "
            <form method='POST' action='https://paypaad.bankpasargad.com/PaymentController' target='_self'>
                <input type='hidden' name='content' value='" 
$dataarray [0] . "' />
                <input type='hidden' name='sign' value='" 
$dataarray[1] . "' />
                <input type='submit' name='submit' value=' پرداخت ' />
            </form>
        "
;
    } else 
$return $data;
    
    return 
$return;
}
function 
getJayPal($jmode$jcard$jemail$jpassword$jamount$jdata$jcallback)
{
    
$result "";
    
$data "METHOD=GET"."&"."card=".$jcard."&"."email=".$jemail."&"."password=".$jpassword."&"."amount=".$jamount."&"."data=".$jdata."&"."callback=".$jcallback."&"."ip=".$_SERVER["REMOTE_ADDR"];
    
$fp fsockopen("jaypal.ir"80);
    
fputs($fp"POST /".$jmode."/ HTTP/1.1\r\n");
    
fputs($fp"Host: jaypal.ir\r\n");
    
fputs($fp"Content-type: application/x-www-form-urlencoded\r\n");
    
fputs($fp"Content-length: ".strlen($data)."\r\n");
    
fputs($fp"Connection: close\r\n\r\n");
    
fputs($fp$data);
    while(!
feof($fp)) $result .= fgets($fp128);
    
fclose($fp);
    
$resultdata explode('|'$result);
    
$resultstr $resultdata[1];
    switch(
$resultstr) {
        case 
"E01E":
            return 
"method is not set or empty";
            break;
        case 
"E02E":
            return 
"card is not set or incorrect";
            break;
        case 
"E03E":
            return 
"email is not set or incorrect";
            break;
        case 
"E04E":
            return 
"password is not set or incorrect";
            break;
        case 
"E05E":
            return 
"amount is not set or empty";
            break;
        case 
"E06E":
            return 
"data is not set or empty";
            break;
        case 
"E07E":
            return 
"callback is not set or empty";
            break;
        case 
"E08E":
            return 
"iN is not set or empty";
            break;
        case 
"E09E":
            return 
"iD is not set or empty";
            break;
        case 
"E10E":
            return 
"tref is not set or empty";
            break;
        case 
"E11E":
            return 
"account expired";
            break;
        case 
"E12E":
            return 
"bank error";
            break;
        case 
"E13E":
            return 
"error in verify";
            break;
        case 
"E14E":
            return 
"error in settle";
            break;
        case 
"E15E":
            return 
"orderid id not found";
            break;
        case 
"E16E":
            return 
"refid is not found";
            break;
        case 
"E17E":
            return 
"database error";
            break;
        case 
"E18E":
            return 
"ip is not set or empty";
            break;
        case 
"E19E":
            return 
"account disable";
            break;
        case 
"E20E":
            return 
"iC is not set or empty";
            break;
        case 
"E21E":
            return 
"transaction not found";
            break;
        case 
"E22E":
            return 
"transaction was verified";
            break;
        case 
"E23E":
            return 
"transaction not verify";
            break;
        default:
            return 
$resultstr;
    }
}
?>