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

时间:2019-05-09 03:11:33

标签: php api search-form

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

我不知道该怎么做是构建PHP表单并显示结果。我本打算在JS中执行此操作,但是随后会在URL中显示API密钥和秘密,并且有多个搜索选项。

根据我和其他人询问的有关php和api的联系,连接将像这样:

$apikey = 'xxxx';
$secret = 'xxxx'
$service_url = 'https://website.com/' .'api_key=' . $apikey . '&api_secret='. $secret.  ‘&’ .$criteria . ‘&’ . $criteria2 . ‘&’ .$criteria3;

这是我用于测试的API URL:

  

域名此处/ clients / api / search?api_key = 1234&api_secret = 1234&state = nsw&given_name = john&surname = smith

json中的结果如下:

[{"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搜索表单有基本的了解,但是这似乎已经超出了我的理解范围。我猜这将是提交查询,提取数据并对其进行格式化的混合。

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

所以它看起来像这样:

搜索表单:

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

结果。

状态:QLD
日期:01/01/2019
列表类型:列表信息
地点:地点信息
更多信息:
姓名:史密斯·戴尔·约翰
地点:达尔文
档案:1234
Additional_info:1做些愚蠢的事


州:昆士兰州
日期:01/01/2019
列表类型:列表信息
地点:地点信息
更多信息:
姓名:史密斯·戴尔·约翰
地点:达尔文
档案:1234
Additional_info:1做些愚蠢的事
2做更多愚蠢的事情
3个非常愚蠢的东西
4个更愚蠢的东西


我知道搜索表单本身应该相对简单,因为它只是要将表单字段插入url中。
但是如何从表单提交生成的URL中提取数据并显示出来呢?

1 个答案:

答案 0 :(得分:1)

要隐藏api密钥和api秘密,您需要添加一个新层。

所以您将拥有:

  1. 前端层(js / html) 在这里,您将向php脚本发出ajax请求。

有关该信息的更多信息,请检查此链接 https://api.jquery.com/jquery.get/

  1. 后端层(php) 在这里,您将调用API。可以使用curl进行通话。

有关该信息的更多信息,请检查此链接 https://www.php.net/manual/en/curl.examples.php

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

在php上,您将获得带有$ _GET的变量

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