Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/248.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用API数据源的php搜索表单_Php_Api_Search Form - Fatal编程技术网

使用API数据源的php搜索表单

使用API数据源的php搜索表单,php,api,search-form,Php,Api,Search Form,我想使用API构建一个PHP表单来提取数据。 我有一个API密钥和密码。我已经通过操纵URL完成了一些基本的测试查询,以确保一切正常 我不知道如何构建PHP表单并显示结果。我打算在JS中这样做,但是API密钥和机密将在URL中显示,并且有多个搜索选项 从我看到的其他人询问php和api的情况来看,连接如下: $apikey = 'xxxx'; $secret = 'xxxx' $service_url = 'https://website.com/' .'api_key=' . $apikey

我想使用API构建一个PHP表单来提取数据。
我有一个API密钥和密码。我已经通过操纵URL完成了一些基本的测试查询,以确保一切正常

我不知道如何构建PHP表单并显示结果。我打算在JS中这样做,但是API密钥和机密将在URL中显示,并且有多个搜索选项

从我看到的其他人询问php和api的情况来看,连接如下:

$apikey = 'xxxx';
$secret = 'xxxx'
$service_url = 'https://website.com/' .'api_key=' . $apikey . '&api_secret='. $secret.  ‘&’ .$criteria . ‘&’ . $criteria2 . ‘&’ .$criteria3;
[{"state":"NT","date":"2016-08-17","listing_type":"listing info","place":"place info","moreinfo":"","name":"SMITH Dale John","location":"Darwin","file":"1234","additional_info":"1  did something stupid"},{"state":"NT","date":"2016-08-03","listing_type":"listing info","place":"place info","moreinfo":"","name":"SMITH Dale John","location":"Katherine"," file":"4567","additional_info":"1 did some more dumb stuff;2 did even more dumb stuff;3  really dumb stuff;4  even more dumb stuff"}]
这是我用于测试的API URL:

域名here/clients/api/search?api_key=1234&api_secret=1234&state=nsw&given_name=john&name=smith

json中的结果如下所示:

$apikey = 'xxxx';
$secret = 'xxxx'
$service_url = 'https://website.com/' .'api_key=' . $apikey . '&api_secret='. $secret.  ‘&’ .$criteria . ‘&’ . $criteria2 . ‘&’ .$criteria3;
[{"state":"NT","date":"2016-08-17","listing_type":"listing info","place":"place info","moreinfo":"","name":"SMITH Dale John","location":"Darwin","file":"1234","additional_info":"1  did something stupid"},{"state":"NT","date":"2016-08-03","listing_type":"listing info","place":"place info","moreinfo":"","name":"SMITH Dale John","location":"Katherine"," file":"4567","additional_info":"1 did some more dumb stuff;2 did even more dumb stuff;3  really dumb stuff;4  even more dumb stuff"}]
我对PHP搜索表单有一个基本的了解,但是这似乎让我有些不知所措。我猜这将是一个提交查询、下拉数据和格式化数据的混合体

我要寻找的是关于如何构建此表单的答案。这将是一个搜索表格,我放在一个网站上,并有结果显示在同一页上

所以看起来是这样的:

$apikey = 'xxxx';
$secret = 'xxxx'
$service_url = 'https://website.com/' .'api_key=' . $apikey . '&api_secret='. $secret.  ‘&’ .$criteria . ‘&’ . $criteria2 . ‘&’ .$criteria3;
[{"state":"NT","date":"2016-08-17","listing_type":"listing info","place":"place info","moreinfo":"","name":"SMITH Dale John","location":"Darwin","file":"1234","additional_info":"1  did something stupid"},{"state":"NT","date":"2016-08-03","listing_type":"listing info","place":"place info","moreinfo":"","name":"SMITH Dale John","location":"Katherine"," file":"4567","additional_info":"1 did some more dumb stuff;2 did even more dumb stuff;3  really dumb stuff;4  even more dumb stuff"}]
搜索表格:

名称:“输入名称” 姓氏:“输入姓氏” 状态:“进入状态”

结果

状态:QLD
日期:2019年1月1日
挂牌类型:挂牌信息
地点:地点信息
更多信息:
姓名:史密斯·戴尔·约翰
地点:达尔文
档案:1234
附加信息:1做了一些愚蠢的事


状态:QLD
日期:2019年1月1日
挂牌类型:挂牌信息
地点:地点信息
更多信息:
姓名:史密斯·戴尔·约翰
地点:达尔文
档案:1234
附加信息:1做了一些愚蠢的事
2做了更愚蠢的事
3个非常愚蠢的东西
4更愚蠢的东西


我知道搜索表单本身应该相对简单,因为它只是将表单字段插入url。

但是如何从表单提交生成的url中提取数据并显示它们呢

要隐藏api密钥和api机密,需要添加一个新层

因此,您将有:

  • 前端层(js/html) 在这里,您将对php脚本执行ajax请求
  • 欲了解更多信息,请查看此链接

  • 后端层(php) 在这里,您将调用API。调用可以通过curl完成
  • 欲了解更多信息,请查看此链接

    在前端,您将使用ajax来scrip.php?name=x&name=y&state=z

    在php上,您将使用$\u get获得变量


    Apikey和secret将仅从php中使用,因此它们将是安全的

    url将对传递api信息的客户端可见,除非您在服务器端传递某些信息,因此我不确定您要隐藏什么。如果担心其他人知道API信息,则应使用https。至于json,我假设您使用json_encode对其进行编码,但也可以使用json_decode'()轻松显示。根据您希望如何向最终用户交付,您将决定如何向他们展示它(我知道这是一个显而易见的说法,但…)。我我会吐出json,让他们在他们认为合适的时候解析它。我只担心如果我使用Javascript,url是否可见。我会在我的问题中添加更多的信息来解释更多。感谢您的反馈。当然,最后一部分是PHP从API接收JSON数据,a)直接将该数据传递回浏览器,让JavaScript代码确定如何在页面中显示该数据,或者b)使用该数据构造一些HTML,然后将其传递回浏览器,JavaScript代码所要做的就是将其附加到页面的某个位置