目錄
回复内容:
首頁 後端開發 php教程 PHP form提交到某API地址后,接收返回的json的问题

PHP form提交到某API地址后,接收返回的json的问题

Jun 06, 2016 pm 08:19 PM
json php

PHP的form表单提交后,跳转到新页面,新页面中显示返回的JSON数据。怎么把这个返回的JSON数据保存下来?返回的JSON数据是否可以获取下来,以便处理。只要其中"retData"值

回复内容:

PHP的form表单提交后,跳转到新页面,新页面中显示返回的JSON数据。怎么把这个返回的JSON数据保存下来?返回的JSON数据是否可以获取下来,以便处理。只要其中"retData"值

看题主应该是比较新的新手吧。我猜那个API应该不是你自己的吧,按照楼上的盆友的说法,如果你在前端进行提交的话,用ajax把数据post到对应的API就可以获取相应的结果了。或者你可以自己做个PHP代理,把数据提交到自己创建的PHP,然后在PHP里面使用curl真正把数据post到对应的API,在获取相应的结果后,要怎么处理就随你了。
贴点代码给你吧

<code>function httpPost($url,$params)
{
  $postData = '';
   //create name value pairs seperated by &
   foreach($params as $k => $v) 
   { 
      $postData .= $k . '='.$v.'&'; 
   }
   $postData = rtrim($postData, '&');
 
    $ch = curl_init();  
 
    curl_setopt($ch,CURLOPT_URL,$url);
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
    curl_setopt($ch,CURLOPT_HEADER, false); 
    curl_setopt($ch, CURLOPT_POST, count($postData));
        curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);    
 
    $output=curl_exec($ch);
 
    curl_close($ch);
    return $output;
 
}</code>
登入後複製

这样用

<code>$params = array(
   "name" => "Ravishanker Kusuma",
   "age" => "32",
   "location" => "India"
);
 
echo httpPost("http://hayageek.com/examples/php/curl-examples/post.php",$params);</code>
登入後複製

代码摘自这里

可以啊. 不知道你这里是要前端存还是后端存?

表单的话要你php去把这部分逻辑给处理掉了.如果按照你描述的话那么后端应该是给了一个redirect,那你用异步还是可以正常获取到结果的. 不知道这么说能不能懂.

试试curl

curl或者ajax提交

如果是MVC的话,通过View的AJAX提交到Controller,然后通过Curl进行调用相应的接口
http://php.net/manual/zh/book.curl.php

如果用js写,就用ajax;如果是php写,就用curl

他们说的都过于复杂了 如果你只需要跳转页面取值 那就存seesion好了 api存、新页面取

你如果FORM过去的话 就会跳转到别人提供的接口地址了 但是接口不是你的你不能修改 所以一定不能跳转 用AJAX提交或者curl模拟POST提交都可以 这两种方法都会把接口的返回值返回到你自己的页面 方便你接下来处理

他们说的这个跟你说的估计不是同一个事。。。
你说的应该是前端(html)提交数据到一个页面,然后这个页面返回一个json,你想用php保存下来对吧?
那么可以这样写

<code><?php if($_GET['action']=='baocun')
{
$f=fopen("baocun.txt","a");
fwrite($f,file_get_contents("php://input")) or die("err");
die("ok");
}
?>
<script src="jquery.js"></script>
<script>
function tj()
{
$.post("你要提交的页面的地址","a="+$("#a")[0].value+"&b="+$("#b")[0].value,function(r){
$.post("?action=baocun",r,function(s){if(s=="ok"){alert("提交成功");}else{alert("提交失败");}

});
});
}
</script>
<form action="">
<input type="text" name="a" id="a">
<input type="text" name="b" id="b">
<input type="button" value="提交" onclick="tj()">
</form>
</code>
登入後複製
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

適用於 Ubuntu 和 Debian 的 PHP 8.4 安裝和升級指南 適用於 Ubuntu 和 Debian 的 PHP 8.4 安裝和升級指南 Dec 24, 2024 pm 04:42 PM

適用於 Ubuntu 和 Debian 的 PHP 8.4 安裝和升級指南

CakePHP 專案配置 CakePHP 專案配置 Sep 10, 2024 pm 05:25 PM

CakePHP 專案配置

CakePHP 日期和時間 CakePHP 日期和時間 Sep 10, 2024 pm 05:27 PM

CakePHP 日期和時間

CakePHP 檔案上傳 CakePHP 檔案上傳 Sep 10, 2024 pm 05:27 PM

CakePHP 檔案上傳

CakePHP 路由 CakePHP 路由 Sep 10, 2024 pm 05:25 PM

CakePHP 路由

討論 CakePHP 討論 CakePHP Sep 10, 2024 pm 05:28 PM

討論 CakePHP

如何設定 Visual Studio Code (VS Code) 進行 PHP 開發 如何設定 Visual Studio Code (VS Code) 進行 PHP 開發 Dec 20, 2024 am 11:31 AM

如何設定 Visual Studio Code (VS Code) 進行 PHP 開發

CakePHP 快速指南 CakePHP 快速指南 Sep 10, 2024 pm 05:27 PM

CakePHP 快速指南

See all articles