PDA

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



Ahmad110
May 9th, 2012, 13:10
سلام
من میخوام از یه فایل php یه رشته کد شده ( base64 ) رو به اسمارتی بفرستم اما ظاهرا از طریق کد زیر این رشته ارسال نمیشه .


$smarty->assign('res', $result);
$smarty->display('file.tpl');

برای ارسال این رشته چه کار باید کرد ؟

the_coder
May 9th, 2012, 13:32
سلام
میخواید ارسال کنید یا نمایش بدید؟

$smarty->assign('res', $result);
این کدتون درسته فقط باید جایی که می خواید بگید نمایش بده
دقیقا بگید چی کار کردید تا بشه راهنمایی کرد

Ahmad110
May 9th, 2012, 13:37
سلام
فکر کنم کد زیر بهتر باشه برای سئوالم .


require_once("RSAProcessor.class.php");
$processor = new RSAProcessor("certificate.xml",RSAKeyType::XMLFile);
$merchantCode = $data[merchant]; // كد پذيرنده
$terminalCode = $data[terminal]; // كد ترمينال
$amount = $data[amount]; // مبلغ فاكتور
$redirectAddress = $data[callback];
$invoiceNumber = $data[invoice_id]; //شماره فاكتور
$timeStamp = date("Y/m/d H:i:s");
$invoiceDate = date("Y/m/d H:i:s"); //تاريخ فاكتور
$action = "1003"; // 1003 : براي درخواست خريد
$data = "#". $merchantCode ."#". $terminalCode ."#". $invoiceNumber ."#". $invoiceDate ."#". $amount ."#". $redirectAddress ."#". $action ."#". $timeStamp ."#";
$data = sha1($data,true);
$data = $processor->sign($data); // امضاي ديجيتال
$result = base64_encode($data); // base64_encode
//-- تبدیل اطلاعات به آرایه برای ارسال به بانک
$params = array(
'merchant' => $merchantCode,
'terminal' => $terminalCode,
'fee' => $amount,
'redirect' => $redirectAddress,
'orderid' => $invoiceNumber,
'time' => $localDate,
'date' => $localTime,
'action' => $additionalData
);
$smarty->assign('par', $params);
$smarty->assign('res', $result);
$smarty->display('pasargad.tpl');

the_coder
May 9th, 2012, 13:42
جایی که res رو نمایش میدید هم کدش رو یزارید

Ahmad110
May 9th, 2012, 13:48
جایی که res رو نمایش میدید هم کدش رو یزارید

کدها به اسمارتی ارسال میشن که بعد از submit از طریق جاوا به بانک ارسال میشن .
پ . ن : منظورتون فایل اسمارتی هستش ؟

the_coder
May 9th, 2012, 13:53
کدها به اسمارتی ارسال میشن که بعد از submit از طریق جاوا به بانک ارسال میشن .
پ . ن : منظورتون فایل اسمارتی هستش ؟
ببینید شما الان به res مقدار دادید اما جایی صداش نزدید و ارسالش نکردید
جایی که کد رو ارسال می کنید بزارید

Ahmad110
May 9th, 2012, 13:57
مگه با این دستور

$smarty->display('pasargad.tpl');
هر دو تا تو فایل پاسارگاد نمایش داده نمیشه ؟

the_coder
May 9th, 2012, 14:00
مگه با این دستور

$smarty->display('pasargad.tpl');
هر دو تا تو فایل پاسارگاد نمایش داده نمیشه ؟
اینکه فقط فایل tpl رو لود کردید
سوال من اینه ؟ کجا این اطلاعات رو ارسال کردید؟ شما الان جایی ارسالش نکردید

Ahmad110
May 9th, 2012, 15:53
اینکه فقط فایل tpl رو لود کردید
سوال من اینه ؟ کجا این اطلاعات رو ارسال کردید؟ شما الان جایی ارسالش نکردید

سلام
فرم ارسال داخل فایل اسمارتی هستش . کد زیر رو ببینید :

<body onLoad="submit_form();">
<div id="main">
<p>در حال اتصال به درگاه بانک پاسارگاد</p></div>
<form name="myform" action="https://epayment.bankpasargad.com/gateway.aspx" method="POST">
<input type="hidden" id="invoiceNumber" name="invoiceNumber" value="{$par.orderid}" >
<input type="hidden" id="invoiceDate" name="invoiceDate" value="{$par.date}" >
<input type="hidden" id="amount" name="amount" value="{$par.fee}" >
<input type="hidden" id="terminalCode" name="terminalCode" value="{$par.terminal}" >
<input type="hidden" id="merchantCode" name="merchantCode" value="{$par.merchant }" >
<input type="hidden" id="redirectAddress" name="redirectAddress" value="{$par.redirect}" >
<input type="hidden" id="timeStamp" name="timeStamp" value="{$par.time}" >
<input type="hidden" id="action" name="action" value="{$par.action}" >
<input type="hidden" id="sign" name="sign" value="{$res}" >
</form>
<script language="javascript">function submit_form(){ldelim}document.myform.submit(){rdel im}</script>
</body>