2016-12-11 5 views
0

Ich habe ein Paypal-Formular erstellt, aber ich möchte die Paypal-Informationen umleiten, sobald alle Datenbankabfragen bestätigt und eingefügt werden, danach möchte ich dann das Formular automatisch gesendet und umgeleitet werden, so dass ich Paypal einige jQuery verwendet, so zu tun, aber leider, wenn ich die Seite er Formular neu geladen hat vorträgt mich nicht, kann hierjquery Formular einreichen, ohne zu schlagen Schaltfläche senden

jemand helfen mein Code

<form action="listing.php" method="post"> 
         <input type="hidden" name="business" value="<?php echo $paypal_id; ?>"> 
         <input type="hidden" name="url" value="<?php echo $paypal_id; ?>"> 
         <input type="hidden" name="paypal_url" value="<?php echo $paypal_url; ?>" /> 
         <input type="hidden" name="cmd" value="_xclick"> 
         <input type="hidden" name="item_name" value="Room Rent for <?php echo $data['name']; ?>"> 
         <input type="hidden" name="item_number" value="<?php echo $_SESSION['id']; ?>"> 
         <input type="hidden" name="credits" value="510"> 
         <input type="hidden" name="userid" value="<?php echo $_SESSION['id']; ?>"> 
         <input type="hidden" name="amount" value="<?php echo $total_cost; ?>"> 
         <input type="hidden" name="start_time" value="<?php echo $start_time; ?>" /> 
         <input type="hidden" name="end_time" value="<?php echo $end_time; ?>" /> 
         <input type="hidden" name="agent_id" value="<?php echo $data['agent_id']; ?>" /> 
         <input type="hidden" name="list_id" value="<?php echo $data['id']; ?>" /> 
         <button type="submit" class="btn5 btn-primary btn-sm" name="book">Book Now</button> 
        </form> 

lassen Sie mich erklären, was ich hier habe ist, ich habe erstellt 2 Formulare in der ersten Form Ich möchte Benutzer auf Senden klicken, wenn der Benutzer alle Informationen in der Datenbank speichert afte R es speichert es mit einer Auto-ID letzten ID generiert und ich möchte diese ID als Transaktions-ID, also habe ich diese ID an paypal für und paypal ohne Formular senden kann ich keine Informationen senden, deshalb habe ich folgende Schritte verwendet, um dies zu tun

<?php 
    if(isset($_POST['book'])) { 
     $user_id = $_POST['userid']; 
     $agent_id = $_POST['agent_id']; 
     $list_id = $_POST['list_id']; 
     $business = $_POST['business']; 
     $item_name = $_POST['item_name']; 
     $item_num = $_POST['item_number']; 
     $amount = $_POST['amount']; 
     $item_num = $_POST['item_number']; 
     $start_time= $_POST['start_time']; 
     $end_time = $_POST['end_time']; 
     $qry_sql = mysqli_query($connection, "INSERT INTO bookings (user_id, agent_id, list_id, booking_date, start_time, end_time, price, status) VALUES ('$user_id', '$agent_id', '$list_id', '".date('d-m-Y')."', '$start_time', '$end_time', '$amount', 'Pending')"); 
     $trans_id = mysqli_insert_id($connection); 
     if($qry_sql) { 
      $co_ammount = $amount/100 * 25; 
      $agent_ammount = $amount - $co_ammount; 
      $due_date = date('d-m-Y', strtotime("+2 days")); 
      $qry_sql1 = mysqli_query($connection, "INSERT INTO financial (agent_id, booking_id, order_date, due_date, total_ammount, agent_ammount, co_ammount, status) VALUES ('$agent_id', '$trans_id', '".date('d-m-Y')."', '$due_date', '$amount', '$agent_amount', '$co_ammount', 'Pending')"); 

?> 
      <script> 
      $('#frmPayPal1').submit(); 
      </script> 
      <form action="<?php echo $_POST['paypal_url']; ?>" method="post" id="frmPayPal1"> 
       <input type="hidden" name="business" value="<?php echo $business; ?>"> 
       <input type="hidden" name="cmd" value="_xclick"> 
       <input type="hidden" name="item_name" value="<?php echo $item_name; ?>"> 
       <input type="hidden" name="item_number" value="<?php echo $trans_id; ?>"> 
       <input type="hidden" name="userid" value="<?php echo $user_id; ?>"> 
       <input type="hidden" name="amount" value="<?php echo $amount; ?>"> 
       <input type="hidden" name="no_shipping" value="1"> 
       <input type="hidden" name="currency_code" value="USD"> 
       <input type="hidden" name="handling" value="0"> 
       <input type="hidden" name="cancel_return" value="http://dev.uparksf.com/cancel.php?tx=<?php echo $trans_id; ?>"> 
       <input type="hidden" name="return" value="http://dev.uparksf.com/success.php"> 
      </form> 
    <?php } ?>  
<?php } ?> 

Antwort

1

nur noch eine Sache, die Sie tun müssen, statt

<script> 
    $('#frmPayPal1').submit(); 
</script> 

es sein sollte:

<script> 
    $(document).ready(function(){ 
     $('#frmPayPal1').submit(); 
    }) 
</script> 

und das sollte funktionieren!

+0

es funktionierte immer noch nicht Umleitung zu paypal wäre das möglich es ist auf Fußzeile platziert und nur weil das nicht umleiten? –

+0

Sind Sie sicher, dass "paypal_url" richtig definiert ist? Hast du auf dieser Seite auch jQuery? Versuchen Sie, eine 'console.log (" Ich bin hier ")' neben dem Submit-Code und sehen, ob es ausgeführt wird –

+0

nichts auf der Konsole Log-Check Ich aktualisiere Formular sowie –

0

Platzieren Sie Ihre Übermittlungsanweisung nach dem schließenden Tag des Formulars. Javascript ist prozedural, also indem Sie das Senden vor dem Formular einreichen, das Sie das Formular einreichen, bevor es geladen wird.

Verwandte Themen