2016-12-11 128 views
0

我创建了一个贝宝的形式,但我想重定向PayPal的信息,一旦所有的数据库查询确认并插入之后,我想接着形式应自动提交,并重定向到PayPal,所以我使用了一些jQuery来做到这一点,但遗憾的是,当我重新加载页面,他的形式没有的提交谁能帮我出jQuery的形式提交,没有击中提交按钮

这里是我的代码

<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> 

所以让我解释什么,我在这里做的是我创建2表格第一种形式我希望用户点击提交时,用户提交所有信息保存到数据库后[R保存它产生了一个自动编号的id和我想要的ID作为事务ID,所以我发送的ID给贝宝和PayPal不形所以这就是为什么我用下面的步骤来做到这一点

我无法发送信息你需要做的
<?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 } ?> 

回答

1

只有一两件事,而不是

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

它应该是:

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

,并应努力!形式结束标记之后

+0

它没有工作仍然没有重定向到贝宝会是这样可能它被放置在页脚,只是因为它是不是重定向? –

+0

你确定'paypal_url'被正确定义吗?你在这个页面也有jQuery吗?尝试把一个'的console.log(“我在这里”)'旁边提交代码,看看它是否执行上的控制台日志检查我更新形式以及 –

+0

什么,并添加形式是第一步骤 –

0

将您提交的语句。 Javascript是程序化的,因此通过在提交表单之前将提交放在加载之前。