PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : درگاه پرداخت آنلاین بانک ملت ( سالم ، رایگان )



mr-programer
February 16th, 2014, 21:12
با سلام .

برنامه نویس هستم :
برنامه نویس , امیرمحمد قربانزاده (http://www.mr-programer.ir)

یک سیستمی توی اینترنت بود ( رایگان ) برای پرداخت آنلاین . من بررسی کردم سیستم بسیار جالبی هست امکانات جالبی هم داشت .

تصمیم گرفتم این اسکریپت رو بهینه سازی کنم و به رایگان برای دانلود قرار بدم . دمو :

1867918680


اصلاحاتی که صورت گرفته :

1 . اصلاح کد های PHP در بخش صندوق سایت و پرداخت ها .
2 . تغییر رابط کاربری ( UI ) در تمامی قسمت ها : مدیریت ، ورود ، صفحه پرداخت و ...
3 . برداشتن کدهای آیفریم و فراخوانی مستقیم اطلاعات پرداخت ها از دیتابیس ( قبلا توی صفحه به شکل آیفریم فراخوانی میشد که مشکل ساز میشد )
4 . حذف فایلهای اضافی برای کم حجم تر شدن سیستم ( با توجه به اینکه این سیستم بصورت ماژول بود دارای فایلهایی مازاد بر فایلهای مورد نیاز ما بود )


دوستان خواهشا و خواهشا به هیچ عنوان این سیستم رو نفروشین و اگر پیشنهادی در رابطه با بهتر شدن این سیستم دارید ارائه کنید .

توجه : سیستم مجهز به ستل میباشد .

دانلود فایلها :
www.mr-programer.ir/payment/payment.zip

دانلود دیتابیس :
www.mr-programer.ir/payment/backup.sql

دمو :
mr-programer.ir/payment
یوخ پول نزنیدا :d


مراحل نصب :

1 فایلها را دانلود کنید و در شاخه دلخواه آپلود نمائید .
2 دیتابیس جدیدی بسازید و فایلهای دیتابیس را دانلود نمائید و در دیتا بیس ساخته شده ایمپورت نمائید .
3 . فایل config.php را ویرایش نمائید و تمامی موارد را جایگذین کنید ( یوزرنیم و پسورد ادمین هم در این بخش گنجانده شده است )
define("termina_id","111111111");
define("terminal_user_name","mrprogramer");
define("terminal_password","11111111111111");
اینها هم اطلاعات درگاه خواهد بود .


نظرات خودتون رو در مورد این تاپیک ارسال کنید . موفق باشید .

saghafi1991
February 16th, 2014, 21:16
بسیار عالی حتما تست میکنم کارتون خوب بود

mr-programer
February 16th, 2014, 21:21
بسیار عالی حتما تست میکنم کارتون خوب بود




قابل بچه های گل وبهاستینگ تاک رو نداره .

saghafi1991
February 16th, 2014, 21:44
نصب کردم خوب بود البته باهاش تست پرداخت نکردم اما یه مشکلی داره .
اونم اینه که

تو فایل کانفیگ

define("main_site","http://webservering.ir/");

در این خط آدرس سایت رو وارد کردم اما ظاهرا باز در بخش ادمین سایت روی دکمه های
برنامه نویس (http://mr-programer.ir/payment/mods/) پرداخت ها (http://mr-programer.ir/payment/mods/epays/admin/) صندوق سایت (http://mr-programer.ir/payment/mods/donates/admin/) پشتیبان گیری (http://mr-programer.ir/payment/mods/sql_backup/) لینک طراح (http://mr-programer.ir)

که کلیکمیکنم سایت شمارو میاره و

با آدرس سایت شما باز میشود
ورود , سيستم مدیریت پرداختی (http://mr-programer.ir/payment/mods/donates/admin/)

mr-programer
February 16th, 2014, 21:46
آهان درسته . من فایل zip رو مجددا اصلاح میکنم تا شب دریافت و تست کنید .

ممنون که اطلاع دادین

baran17862
August 9th, 2014, 23:17
با سلام و خسته نباشید
من نصب کردم ولی مشکل داره...
یه صفحه میاد اینجوری :

جهت :".$title." مبلغ:".$amount; $order=new sales(); $order->set_value("user_id",$user_id); $order->set_value("title",$title); $order->set_value("full_name",$full_name); $order->set_value("email",$email); $order->set_value("mobile",$mobile); $order->set_value("amount",$amount); $order->set_value("ip",$_SERVER["REMOTE_ADDR"]); $order->set_value("sale_time_stamp",time()); $order->set_value("descriptions",$descriptions); $order->set_value("string_time",get_curr_str_jdate()) ; if($order->save()) { $order->set_value("saleOrderId",mt_rand(5,2000)."0".$order->get_value("id")); $orderId=$order->get_value("saleOrderId"); //print " ".$orderId.""; // die($terminal_id); // print_r($order); //print "order_id=".$orderId." "; $parameters = array( 'terminalId' => $terminal_id, 'userName' => $user, 'userPassword' => $pass, 'orderId' => $orderId, 'amount' => $amount, 'localDate' =>date("Ymd"), 'localTime' => date("Gi"), 'additionalData' => $descriptions, 'callBackUrl' => $callBackUrl."/mellat/call_back.php?bank_name=mellat"."&hsd=".sha1(salt.$orderId.salt), 'payerId' => $payerId); $result = $client->call('bpPayRequest', $parameters,$namespace); // print_r($result); $error=split(",",$result); if(sizeof($error)!=2) return $error; else { if($error[0]!="0") return $error; $order->set_value("RefId",$error[1]); if($order->save()) return $error; else return array(1200,0); } } else return array(1200,0); } function bpVerifyRequest($terminal_id=termina_id,$user=term inal_user_name,$pass=terminal_password) { if(sha1(salt.$_POST["SaleOrderId"].salt)!=$_GET["hsd"]) return 1203; $namespace='http://interfaces.core.sw.bps.com/'; $client = new nusoap_client('https://pgws.bpm.bankmellat.ir/pgwchannel/services/pgw?wsdl'); $RefId =$_POST["RefId"]; $orderId=$_POST["SaleOrderId"]; $saleOrderId=$_POST["SaleOrderId"]; $saleReferenceId=$_POST["SaleReferenceId"]; $ResCode=$_POST["ResCode"]; $sale=new sales(); $sale=$sale->custome_find2(array("RefId"=>$RefId),1); if(!$sale) return 1201; if($ResCode!=0) return $ResCode; if($sale->get_value("pay_status")=="0") return 0; else if($sale->get_value("pay_status")=="1") return 1205; $sale->set_value("saleOrderId",$saleOrderId); $sale->set_value("SaleReferenceId",$saleReferenceId); $sale->set_value("ResCode",$ResCode); if(!$sale->save()) return 1200; $parameters = array( 'terminalId' => $terminal_id, 'userName' => $user, 'userPassword' => $pass, 'orderId' => $orderId, 'saleOrderId' =>$saleOrderId, 'saleReferenceId' => $saleReferenceId, ); $result = $client->call('bpVerifyRequest', $parameters,$namespace); if($result==0 ){$sale->set_value("pay_status",0); if(!$sale->save()){ return 1200;} return $result;} else { $result=bpInquiryRequest($RefId); return $result; } } function bpSettleRequest($RefId,$terminal_id=termina_id,$us er=terminal_user_name,$pass=terminal_password) { $namespace='http://interfaces.core.sw.bps.com/'; $client = new nusoap_client('https://pgws.bpm.bankmellat.ir/pgwchannel/services/pgw?wsdl'); $sale=new sales(); $sale=$sale->custome_find2(array("RefId"=>$RefId),1); if(!$sale|| $sale->get_value("RefId")!=$RefId) return 1201; $orderId=$sale->get_value("saleOrderId"); $saleOrderId=$sale->get_value("saleOrderId"); $saleReferenceId=$sale->get_value("SaleReferenceId"); $parameters = array( 'terminalId' => $terminal_id, 'userName' => $user, 'userPassword' => $pass, 'orderId' => $orderId, 'saleOrderId' =>$saleOrderId, 'saleReferenceId' => $saleReferenceId, ); $result = $client->call('bpSettleRequest', $parameters,$namespace); if($result==0 || ($sale->get_value("pay_status")!="1" && $result==45) ){$sale->set_value("pay_status",1); if(!$sale->save()){ return 1200;}return $result; } return $result; } function bpInquiryRequest($RefId,$terminal_id=termina_id,$u ser=terminal_user_name,$pass=terminal_password) { $namespace='http://interfaces.core.sw.bps.com/'; $client = new nusoap_client('https://pgws.bpm.bankmellat.ir/pgwchannel/services/pgw?wsdl'); $sale=new sales(); $sale=$sale->custome_find2(array("RefId"=>$RefId),1); if(!$sale) return 1201; $orderId=$sale->get_value("saleOrderId"); $saleOrderId=$sale->get_value("saleOrderId"); $saleReferenceId=$sale->get_value("SaleReferenceId"); $parameters = array( 'terminalId' => $terminal_id, 'userName' => $user, 'userPassword' => $pass, 'orderId' => $orderId, 'saleOrderId' =>$saleOrderId, 'saleReferenceId' => $saleReferenceId, ); $result = $client->call('bpInquiryRequest', $parameters,$namespace); if($result==0 ){$sale->set_value("pay_status",0); if(!$sale->save()){ return 1200;}} return $result; } function bpReversalRequest($RefId,$terminal_id=termina_id,$ user=terminal_user_name,$pass=terminal_password) { $namespace='http://interfaces.core.sw.bps.com/'; $client = new nusoap_client('https://pgws.bpm.bankmellat.ir/pgwchannel/services/pgw?wsdl'); $sale=new sales(); $sale=$sale->custome_find2(array("RefId"=>$RefId),1); if(!$sale ) return 1201; $orderId=$sale->get_value("saleOrderId"); $saleOrderId=$sale->get_value("saleOrderId"); $saleReferenceId=$sale->get_value("SaleReferenceId"); $parameters = array( 'terminalId' => $terminal_id, 'userName' => $user, 'userPassword' => $pass, 'orderId' => $orderId, 'saleOrderId' =>$saleOrderId, 'saleReferenceId' => $saleReferenceId, ); $result = $client->call('bpReversalRequest', $parameters,$namespace); return $result; } function epay_errors($error_code) { print_r($error_code); $error_code=trim($error_code); $arr=array(); $arr[0]="تراكنش با موفقيت انجام شد"; $arr[11]="شماره كارت نامعتبر است"; $arr[12]="موجودي كافي نيست"; $arr[13]="رمز نادرست است"; $arr[14]="تعداد دفعات وارد كردن رمز بيش از حد مجاز است"; $arr[15]="كارت نامعتبر است"; $arr[16]="دفعات برداشت وجه بيش از حد مجاز است"; $arr[17]="كاربر از انجام تراكنش منصرف شده است"; $arr[18]="تاريخ انقضاي كارت گذشته است"; $arr[19]="مبلغ برداشت وجه بيش از حد مجاز است"; $arr[111]="صادر كننده كارت نامعتبر است"; $arr[112]="خطاي سوييچ صادر كننده كارت"; $arr[113]="پاسخي از صادر كننده كارت دريافت نشد"; $arr[114]="دارنده كارت مجاز به انجام اين تراكنش نيست"; $arr[21]="پذيرنده نامعتبر است"; $arr[23]="خطاي امنيتي رخ داده است"; $arr[24]="اطلاعات كاربري پذيرنده نامعتبر است
و....

mr-programer
August 10th, 2014, 14:53
با سلام و خسته نباشید
من نصب کردم ولی مشکل داره...
یه صفحه میاد اینجوری :

جهت :".$title." مبلغ:".$amount; $order=new sales(); $order->set_value("user_id",$user_id); $order->set_value("title",$title); $order->set_value("full_name",$full_name); $order->set_value("email",$email); $order->set_value("mobile",$mobile); $order->set_value("amount",$amount); $order->set_value("ip",$_SERVER["REMOTE_ADDR"]); $order->set_value("sale_time_stamp",time()); $order->set_value("descriptions",$descriptions); $order->set_value("string_time",get_curr_str_jdate()) ; if($order->save()) { $order->set_value("saleOrderId",mt_rand(5,2000)."0".$orde r->get_value("id")); $orderId=$order->get_value("saleOrderId"); //print " ".$orderId."

"; // die($terminal_id); // print_r($order); //print "order_id=".$orderId." "; $parameters = array( 'terminalId' => $terminal_id, 'userName' => $user, 'userPassword' => $pass, 'orderId' => $orderId, 'amount' => $amount, 'localDate' =>date("Ymd"), 'localTime' => date("Gi"), 'additionalData' => $descriptions, 'callBackUrl' => $callBackUrl."/mellat/call_back.php?bank_name=mellat"."&hsd=".sha1(salt. $orderId.salt), 'payerId' => $payerId); $result = $client->call('bpPayRequest', $parameters,$namespace); // print_r($result); $error=split(",",$result); if(sizeof($error)!=2) return $error; else { if($error[0]!="0") return $error; $order->set_value("RefId",$error[1]); if($order->save()) return $error; else return array(1200,0); } } else return array(1200,0); } function bpVerifyRequest($terminal_id=termina_id,$user=term inal_user_name,$pass=terminal_password) { if(sha1(salt.$_POST["SaleOrderId"].salt)!=$_GET["hsd"]) return 1203; $namespace='http://interfaces.core.sw.bps.com/'; $client = new nusoap_client('https://pgws.bpm.bankmellat.ir/pgwchannel/services/pgw?wsdl'); $RefId =$_POST["RefId"]; $orderId=$_POST["SaleOrderId"]; $saleOrderId=$_POST["SaleOrderId"]; $saleReferenceId=$_POST["SaleReferenceId"]; $ResCode=$_POST["ResCode"]; $sale=new sales(); $sale=$sale->custome_find2(array("RefId"=>$RefId),1); if(!$sale) return 1201; if($ResCode!=0) return $ResCode; if($sale->get_value("pay_status")=="0") return 0; else if($sale->get_value("pay_status")=="1") return 1205; $sale->set_value("saleOrderId",$saleOrderId); $sale->set_value("SaleReferenceId",$saleReferenceId); $sale->set_value("ResCode",$ResCode); if(!$sale->save()) return 1200; $parameters = array( 'terminalId' => $terminal_id, 'userName' => $user, 'userPassword' => $pass, 'orderId' => $orderId, 'saleOrderId' =>$saleOrderId, 'saleReferenceId' => $saleReferenceId, ); $result = $client->call('bpVerifyRequest', $parameters,$namespace); if($result==0 ){$sale->set_value("pay_status",0); if(!$sale->save()){ return 1200;} return $result;} else { $result=bpInquiryRequest($RefId); return $result; } } function bpSettleRequest($RefId,$terminal_id=termina_id,$us er=terminal_user_name,$pass=terminal_password) { $namespace='http://interfaces.core.sw.bps.com/'; $client = new nusoap_client('https://pgws.bpm.bankmellat.ir/pgwchannel/services/pgw?wsdl'); $sale=new sales(); $sale=$sale->custome_find2(array("RefId"=>$RefId),1); if(!$sale|| $sale->get_value("RefId")!=$RefId) return 1201; $orderId=$sale->get_value("saleOrderId"); $saleOrderId=$sale->get_value("saleOrderId"); $saleReferenceId=$sale->get_value("SaleReferenceId"); $parameters = array( 'terminalId' => $terminal_id, 'userName' => $user, 'userPassword' => $pass, 'orderId' => $orderId, 'saleOrderId' =>$saleOrderId, 'saleReferenceId' => $saleReferenceId, ); $result = $client->call('bpSettleRequest', $parameters,$namespace); if($result==0 || ($sale->get_value("pay_status")!="1" && $result==45) ){$sale->set_value("pay_status",1); if(!$sale->save()){ return 1200;}return $result; } return $result; } function bpInquiryRequest($RefId,$terminal_id=termina_id,$u ser=terminal_user_name,$pass=terminal_password) { $namespace='http://interfaces.core.sw.bps.com/'; $client = new nusoap_client('https://pgws.bpm.bankmellat.ir/pgwchannel/services/pgw?wsdl'); $sale=new sales(); $sale=$sale->custome_find2(array("RefId"=>$RefId),1); if(!$sale) return 1201; $orderId=$sale->get_value("saleOrderId"); $saleOrderId=$sale->get_value("saleOrderId"); $saleReferenceId=$sale->get_value("SaleReferenceId"); $parameters = array( 'terminalId' => $terminal_id, 'userName' => $user, 'userPassword' => $pass, 'orderId' => $orderId, 'saleOrderId' =>$saleOrderId, 'saleReferenceId' => $saleReferenceId, ); $result = $client->call('bpInquiryRequest', $parameters,$namespace); if($result==0 ){$sale->set_value("pay_status",0); if(!$sale->save()){ return 1200;}} return $result; } function bpReversalRequest($RefId,$terminal_id=termina_id,$ user=terminal_user_name,$pass=terminal_password) { $namespace='http://interfaces.core.sw.bps.com/'; $client = new nusoap_client('https://pgws.bpm.bankmellat.ir/pgwchannel/services/pgw?wsdl'); $sale=new sales(); $sale=$sale->custome_find2(array("RefId"=>$RefId),1); if(!$sale ) return 1201; $orderId=$sale->get_value("saleOrderId"); $saleOrderId=$sale->get_value("saleOrderId"); $saleReferenceId=$sale->get_value("SaleReferenceId"); $parameters = array( 'terminalId' => $terminal_id, 'userName' => $user, 'userPassword' => $pass, 'orderId' => $orderId, 'saleOrderId' =>$saleOrderId, 'saleReferenceId' => $saleReferenceId, ); $result = $client->call('bpReversalRequest', $parameters,$namespace); return $result; } function epay_errors($error_code) { print_r($error_code); $error_code=trim($error_code); $arr=array(); $arr[0]="تراكنش با موفقيت انجام شد"; $arr[11]="شماره كارت نامعتبر است"; $arr[12]="موجودي كافي نيست"; $arr[13]="رمز نادرست است"; $arr[14]="تعداد دفعات وارد كردن رمز بيش از حد مجاز است"; $arr[15]="كارت نامعتبر است"; $arr[16]="دفعات برداشت وجه بيش از حد مجاز است"; $arr[17]="كاربر از انجام تراكنش منصرف شده است"; $arr[18]="تاريخ انقضاي كارت گذشته است"; $arr[19]="مبلغ برداشت وجه بيش از حد مجاز است"; $arr[111]="صادر كننده كارت نامعتبر است"; $arr[112]="خطاي سوييچ صادر كننده كارت"; $arr[113]="پاسخي از صادر كننده كارت دريافت نشد"; $arr[114]="دارنده كارت مجاز به انجام اين تراكنش نيست"; $arr[21]="پذيرنده نامعتبر است"; $arr[23]="خطاي امنيتي رخ داده است"; $arr[24]="اطلاعات كاربري پذيرنده نامعتبر است
و....


سلام ممنون از نظراتتون در اسرع وقت اصلاح میکنم و لینک دانلود رو دوباره قرار میدم .

ممنون از نظراتتون .

modiranhosting
August 10th, 2014, 16:29
اگه قول میدین دلگیر نشین چند تا اشکال رو مطرح کنم ! ;;)

baran17862
August 11th, 2014, 09:35
اگه قول میدین دلگیر نشین چند تا اشکال رو مطرح کنم ! ;;)

اشکال از چی ؟

modiranhosting
August 11th, 2014, 13:24
اشکال از چی ؟

منظور بنده با استارتر بود.

mr-programer
August 11th, 2014, 13:44
اگه قول میدین دلگیر نشین چند تا اشکال رو مطرح کنم ! ;;)




نه عزیز طراح سیستم من نیستم که من فقط یه چند تا مشکل داشت برطرف کردم و رابط کاربریشو زدم .

اشکالاشو بگین ممنون میشم .

مرسی .

modiranhosting
August 11th, 2014, 14:01
نه عزیز طراح سیستم من نیستم که من فقط یه چند تا مشکل داشت برطرف کردم و رابط کاربریشو زدم .

اشکالاشو بگین ممنون میشم .

مرسی .

1- گرافیکش به شدت جای کار داره
2- قسمت درج مبلغ به ریال یا تومان بهتر بود قیمت رو واضح تر یا با درج , مشخص میکرد که کاربر به شتباه مبلغی رو نزنه
3- صفحه Call Back مشکل داره شما برو توی درگاه بانک و انصراف بزن ( البته دیدم صفحه کال بک رفع شده یک دکمه بازگشت هم بزارید عالی میشه )

baran17862
August 11th, 2014, 20:18
اون مشکل برطرف نشد ؟

baran17862
August 28th, 2014, 09:48
با سلام
مهندس جان من بالاخره موفق شدم درگاه را نصب کنم
ولی...
در هنگام پرداخت این خطا را میده :

"خطاي زير رخ داده است:
1200سايت مدرسه دچار خطا شده است(1200)
لطفا ظرف چند دقيقه آينده دوباره سعي نماييد"درصورتی که دیتابیس هم به درستی ساخته و ایمپورت شده است
مشکل کجاست ؟

- - - Updated - - -

به نظرتون مشکل کجاست ؟

majids
September 24th, 2014, 23:06
سلام.

ممنون بابت اسکریپت.

امنیتش چطوره؟ مواردی که دوستان گفتن هنوز ویرایش نکردید؟؟

- - - Updated - - -

پرداخت انجام میشه. کد تراکنش هم میده.

اما واریز نمیشه به حسابم. چرا؟؟