So I made a module that needs to gather some data and redirect user and that data to a payment site.
function payment_upload_form($form, &$form_state){ $form = array(); $form['#action'] = 'www.somepaymantsite.com'; $form['#method'] = 'POST'; $form['CustomerFirstName'] = array( '#title' => t('First name'), '#type' => 'textfield', '#required' => TRUE, '#size' => 25, ); $form['CustomerLastName'] = array( '#title' => t('Last name'), '#type' => 'textfield', '#required' => TRUE, '#size' => 25, ); etc.... $form['customersubmit'] = array( '#value' => 'Pay now', '#type' => 'submit', '#submit' => array('wspay_submit'), ); return $form; } function payment_submit($form, &$form_state){ $option = array( 'ShopID'=>'xzy', 'ShoppingCartID' => $temp_cid, 'TotalAmount'=> $amount, 'Signature' => $signature, 'ReturnURL' =>'http://some_sitecom', 'CancelURL' => 'http://some_site.com', 'ReturnErrorURL' => 'http://some_site.com/1', 'CustomerFirstName' => $form_state['values']['CustomerFirstName'], 'CustomerLastName' => $form_state['values']['CustomerLastName'], .... ); $options = array( 'method' => 'POST', 'data' => drupal_http_build_query($option), 'timeout' => 15, 'headers' => array('Content-Type' => 'application/x-www-form-urlencoded'), ); $response = drupal_http_request('www.somepaymantsite.com', $options); $response->redirect_url = 'www.somepaymantsite.com';
The problem is that it does not redirect me on the first go, but when I use the same ShoppingCartID it redirects me and I get an error because the ID is the same(it need’s to be different every time), but the data is in the URL . So my question is why does it not redirect the user with the data to the site when he clicks Pay now.
———————- EDIT ————-
How can i create a middle page in drupal that has this data and sends it like that, meaning a confirmation page :
<form name=“pay“ action=“https://to.the.shop.something“ method=“POST“> <input type=“hidden“ name=“ID“ value=“some_value“> <input type=“hidden“ name=“ID2“ value=“some_value“> <input type=“hidden“ name=“ID3“ value=“some_value“> <input type=“submit“ value=“Pay now“> </form>