2017-07-15 72 views
0

我陷在這個問題上。我沒有得到我的這兩個隱藏的領域其餘的我得到的所有數據。任何人都可以幫助我,我做錯了什麼。這裏是我的PayPal形式: -如何讓我在paypal ipn中添加隱藏字段?

<form id="paypalForm" action="<?php echo $paypalURL; ?>" target="_blank" name="paypalform" method="post" style="display: none;" > 
<!-- Identify your business so that you can collect the payments. --> 
<input type="hidden" name="business" value="<?php echo $paypalID; ?>"> 
<!-- Specify a Buy Now button. --> 
<input type="hidden" name="cmd" value="_xclick"> 
<!-- Specify details about the item that buyers will purchase. --> 
<input type="hidden" name="item_name" value="{{ $serviceName }}"> 
<input type="hidden" name="item_number" value="<?php echo $cartId; ?>"> 
<input type="hidden" name="amount"> 
<input type="hidden" name="currency_code" value="GBP"> 
<input type="hidden" name="auto_renew" value="no"> 
<input type="hidden" name="email_pref" value="no"> 
<input type='hidden' name='notify_url' value="{{ url('/ipn-paypal-success') }}"> 
<input type='hidden' name='cancel_return' value="{{ url('/paypal-cancel') }}"> 
<input type='hidden' name='return' value="{{ url('/paypal-sucess') }}"> 
<div class="form-group"> 
    <label class="col-xs-3 col-form-label"></label> 
    <div class="col-xs-9"> 
     <input id="paypalsubmit" type="button" value="Proceed to Payment" class="btn btn-payment-btn" /> 
    </div> 
</div> 
</form> 

這是我的新的兩個隱藏字段auto_renew和email_pref 但是,當我在電子郵件得到迴應,我沒有得到這兩個。這裏是我的Ipn功能: -

public function ipnPaypalSucess(){ 
    $data = $_REQUEST; 
    mail('[email protected]', 'array data', '<pre>'.print_r($data, true).'</pre>');  
} 

我使用的是laravel 5.2框架。請幫我什麼,我做錯了

回答

0

$_REQUEST的內容和順序是受在php.ini

爲什麼你不使用Laravel請求variables_order指令?

確保沒有use Illuminate\Http\Request;頂部控制器

public function ipnPaypalSucess(Request $request){ 
    return $request->all(); 
} 

的,如果所有輸入字段顯示,從而將其替換代碼:

public function ipnPaypalSucess(Request $request){ 
    $data = $request->all(); 
    mail('[email protected]', 'array data', '<pre>'.print_r($data, true).'</pre>');  
} 
0

你不能只是添加自己的領域到PayPal按鈕並期望這些領域迴歸IPN。有一個字段是爲了這個,它的字面意思是「自定義」。因此,這是你需要做什麼:那麼

<input type="hidden" name="custom" value="custom value(s) go here" /> 

不管你在該領域的地方會回來$_REQUEST['custom']在你的IPN偵聽器。

當您有多個字段時,您可以在自定義參數中放置一個NVP字符串,然後在IPN腳本中將其解析回來。或者,您可以將所有自定義數據存儲在數據庫中,然後在自定義參數中傳遞一個記錄標識,以便您可以根據IPN腳本中的記錄標識取回該數據。