使用 ajax 将值输入类型文本发送到另一个 php 文件

Posted

技术标签:

【中文标题】使用 ajax 将值输入类型文本发送到另一个 php 文件【英文标题】:Send the value input type text to another php file using ajax 【发布时间】:2017-03-09 05:20:08 【问题描述】:

我正在尝试发送此值

<form class="paypal" action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="POST">
      <input type="hidden" name="business" value="nineteenseventees@gmail.com">
      <input type="hidden" name="cmd" value="_xclick">
      <input type="hidden" name="upload" value="1">
      <input type="hidden" name="item_name" value="'.$fetch['ShirtType'].'-'.$fetch['ShirtSize'].'-'.$fetch['ShirtColor'].'">
      <input type="hidden" name="item_number" value="'.$fetch['itemnum'].'">
      <input type="hidden" name="quantity" value="'.$fetch['quantity'].'">
      <input type="hidden" name="amount" value="'.$fetch['ItemPrice'].'">
      <input type="hidden" name="currency_code" value="php">
      <input type="hidden" name="cancel_return" value="http://localhost/imageupload/index.php">
      <input type="hidden" name="return" value="http://localhost/imageupload/paysuccess.php">
      <input type="hidden" id="ordernumber" value="'.$fetch['OrderNum'].'">
      <button class="btn btn-primary pull-right" type="submit" id="paypalbutton" name="paypalbutton"><i class="fa fa-check"></i></button>

当我按下按钮时,这会转到贝宝。但我希望它通过 ajax 转到贝宝,并将 OrderNum 保存到会话。

我尝试使用 AJAX,但我似乎无法让它工作。在这里

  $('#paypalbutton').on('click', function(e)
  var num = $("#ordernumber").val();
  $.ajax(
    type: 'POST',
    url: 'redirect.php',
    data: 
        onumber: num
    
 ); 
);

我正在尝试将其发送到这里:redirect.php

<?php
session_start();
require_once 'dbconnect.php';

$_SESSION['order'] = $_POST['onumber'];
echo $_SESSION['order'];

?>

【问题讨论】:

启动会话并将会话填充到远程文件中不会导致本地文件在刷新之前获取会话数据。 你看过浏览器开发者工具中的AJAX请求/响应吗?您是否在项目中包含了 jQuery 库?是否报告了任何错误?你是在网络服务器上运行它吗? 是的。包含 jQuery 库并且没有报告错误。我在 localhost 上运行它。 【参考方案1】:
$('.paypal').on('submit', function(e)
    e.preventDefault();
    var num = $("#ordernumber").val();
    $.ajax(
       type: 'POST',
       url: 'redirect.php',
       data: 
          onumber: num
       
   ); 
);

【讨论】:

【参考方案2】:

首先:

<button class="btn btn-primary pull-right" type="button" id="paypalbutton" name="paypalbutton"><i class="fa fa-check"></i></button>

第二:

      $('#paypalbutton').click(function()
         var num = $("#ordernumber").val();
         $.post('redirect.php',onumber:num,function(data)
           if(data)
              console.log(data);
              $(".paypal").submit();
           

         ); 
      );

请用您的 javascript 代码替换它并尝试一次。

【讨论】:

以上是关于使用 ajax 将值输入类型文本发送到另一个 php 文件的主要内容,如果未能解决你的问题,请参考以下文章

将快速文本输入发送到另一个进程(窗口)

将值从一个视图发送到另一个 ExtJS 4

使用 jQuery 将值从一个输入镜像到另一个输入

如何将值从 Item Click RecyclerView 发送到另一个 java 类

如何使用 jquery ajax 将选中复选框的值发送到另一个页面

如何使用会话将值从一个php页面传递到另一个页面