как вставить из формы перед переходом на PAYPAL в PHP MYSQL - PullRequest
0 голосов
/ 05 мая 2019

Я пытаюсь отправить данные в первую очередь, прежде чем приступить к оплате PayPal, но они просто заполняются при нажатии кнопки Отправить. Это не будет продолжаться, когда я нажму "отправить", я использую ajax для отправки формы.

Я пытался найти способ оплаты PayPal, который вставляет данные в MySQL, а затем перейти к оплате PayPal

Это мой index.php

<?php
$amount = "500";
//<input type="submit" value="Reserve" name="insert">
?>
<header>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.0/jquery.min.js"></script>
<script>

 $(function () {

        $('#senrollnow').on('submit', function (e) {

      var form = $(this);

      if(!form.hasClass('pending')) {

          e.preventDefault();

          form.addClass('pending');

          $.ajax({

              type: 'post',

              url: 'insert.php',

              data: $('#senrollnow').serialize(),

              success: function () {

                form.submit();

                 alert('form was submitted'+data);

              }
          });
      }
});

  $('#freeform').on('submit', function (e) {

  //e.preventDefault(); //prevents the form to submit

          alert("Your request has been sent! Please check your email within 12 hours for my feedback. Thank you.");

        });

      });

</script>
</header>
<form action="https://www.sandbox.paypal.com/cgi-bin/webscr" name="ligit" method="POST" id="senrollnow" target="_top" >
                  <label>Name</label>
                  <input type="text" name="name" required>
                  <label>Phone</label>
                  <input type="text" name="contactnum" required>
                  <label>Address</label>
                  <input type="text" name="address" required>
                  <label>Date Check In</label>
                  <input type="date" name="checkin" required>
                  <label>Date Check Out</label>
                  <input type="date" name="checkout" required>
                  <label>Room Type</label>
                  <select name="roomtype" required>
                    <option value="Standard">Standard</option>
                    <option value="Deluxe">Deluxe</option>
                  </select>
                  <input type="hidden" name="cmd" value="_xclick">
                  <input type="hidden" name="business" value="sajol.mikefrancisfil@gmail.com">
                  <label>10$ Reservation Fee</label>
                  <input type="hidden" name="amount" value="<?php echo $amount;?>" readonly>
                  <input type="hidden" name="shipping" value="0">
                  <input type="hidden" name="item_name" value="Reservation Fee">
                  <input type="hidden" name="no_note" value="1">
                  <input type="hidden" name="currency_code" value="PHP">
                  <input type="hidden" name="lc" value="AU">
                  <input type="hidden" name="bn" value="PP-BuyNowBF">
                  <input type="hidden" name="return" value="https://net.tutsplus.com/payment-complete/">

                  <br /><br />


                  <input type="button" value="Submit" name="submit">

</form>

и это мой insert.php

<?php

$host = "localhost";
$user = "root";
$password ="";
$database = "db_ohrsv3";

mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);

// connect to mysql database
try{
    $connect = mysqli_connect($host, $user, $password, $database);
} catch (mysqli_sql_exception $ex) {
    echo '<p style="color:red">Connection Error</p>';
}

function getPosts()
{
    $posts = array();
    $posts[0] = $_POST['name'];
    $posts[1] = $_POST['contactnum'];
    $posts[2] = $_POST['address'];
    $posts[3] = $_POST['checkin'];
    $posts[4] = $_POST['checkout'];
    $posts[5] = $_POST['roomtype'];
    return $posts;
}

if(isset($_POST['submit']))
{
    $data = getPosts();
    $insert_Query = "INSERT INTO payments (name, contactnum, address, checkin, checkout, roomtype) VALUES ('$data[0]','$data[1]','$data[2]','$data[3]','$data[4]','$data[5]')";
    try{
        $insert_Result = mysqli_query($connect, $insert_Query);

        if($insert_Result)
        {
            if(mysqli_affected_rows($connect) > 0)
            {
                echo '<p style="color:red">Data Inserted</p>';
            }else{
                echo '<p style="color:red">Data Not Inserted</p>';
            }
        }
    } catch (Exception $ex) {
        echo '<p style="color:red">Error Insert </p>'.$ex->getMessage();
    }
}

header("location: index.php");
?>

Не знаю, что не так и почему его не отправляют.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...