The Apple itunes provided a search API for retrieve app information from it. The Apple search API display result as JSON format. Do you want to know more information about Apple itunes search API, then visit iTunes Search API.
You can also create search API like Apple itunes search API if you know how to create JSON file using PHP. Due to this, you can provide search API for your websites. If you didn't know create JSON file using PHP and MySQL, then visit How to get output as JSON format using PHP and Mysql.
Lets see how to create search API using PHP. Follow below steps to generate search API for your websites using PHP.
Connect your MySQL database to get stored values from it using PHP. The PHP code for connect MySQL database is below:
While user search something on your search API, you need to get those values for search from url. So only you can provide particular results from your MySQL database. This is done by below PHP code.
After got values from url, you've to make MySQL query to select corresponding results from database. You can get zero or more than one values from urls for search. You should make MySQL query like below using PHP.
You must add header type ato your PHP script for get output as JSON format. This is like below
You need to create 2 array for create output as multidimensional array. Retrieve values from query result using mysql_fetch_array. Then you push values to array using array_push() in PHP. Finally encode the results to display output as JSON format using json_encode().
The full PHP code for create search API is represented below,
<?php
error_reporting('E_ALL ^ E_NOTICE');
mysql_connect('localhost','root','') or die(mysql_error());
mysql_select_db('fitness') or die(mysql_error());
$field=$_REQUEST['field'];
$limit=$_REQUEST['limit'];
if($field!='' && $limit!='')
{
$cond="where name='".$field."' order by id desc limit 0, $limit";
}
if($field=='' && $limit!='')
{
$cond="order by id desc limit 0, $limit";
}
if($field!='' && $limit=='')
{
$cond="where name='".$field."' order by id desc limit 0, 50";
}
if($field=='' && $limit=='')
{
$cond="order by id desc limit 0, 50";
}
$q=mysql_query("select * from user $cond") or die(mysql_error());
header('Content-Type: Application/json');
$details=array();
$user=array();
while($res=mysql_fetch_array($q))
{
$user['name']=$res['name'];
$user['state']=$res['state'];
$user['country']=$res['country'];
array_push($details,$user);
}
//print_R($details);
echo json_encode($details);
?>
Your JSON output should be like below,
[
{"name":"Clark","state":"California","country":"USA"},
{"name":"Anderson","state":"Los Angeles","country":"USA"},
{"name":"Smith","state":"London","country":"United Kingdom"},
{"name":"Jones","state":"Cambridge","country":"United Kingdom"},
{"name":"Nathan","state":"Franche Comte","country":"France"},
{"name":"Marie","state":"Paris","country":"France"},
{"name":"Nastya","state":"St Petersburg ","country":"Russia"},
{"name":"Dima","state":"Moscow","country":"Russia"},
{"name":"Linh","state":"Hanoi","country":"vietnam"},
{"name":"Hoang","state":"Hai Phong","country":"vietnam"},
]
Add following lines to your .htaccess file
Now you entered search on address bar, the .htaccess redirects you to search.php file. You can get search API using below url types.
http://www.phponwebsites.com/search?field=nathan&limit=10
http://www.phponwebsites.com/search?field=nathan
http://www.phponwebsites.com/search?limit=10
http://www.phponwebsites.com/search
You can also create search API like Apple itunes search API if you know how to create JSON file using PHP. Due to this, you can provide search API for your websites. If you didn't know create JSON file using PHP and MySQL, then visit How to get output as JSON format using PHP and Mysql.
Generate Search API using PHP and MySQL
Lets see how to create search API using PHP. Follow below steps to generate search API for your websites using PHP.
Step1: Connect MySQL database using PHP
Connect your MySQL database to get stored values from it using PHP. The PHP code for connect MySQL database is below:
mysql_connect('localhost','root','') or die(mysql_error());
mysql_select_db('fitness') or die(mysql_error());
mysql_select_db('fitness') or die(mysql_error());
Step2: Get value from url using PHP
While user search something on your search API, you need to get those values for search from url. So only you can provide particular results from your MySQL database. This is done by below PHP code.
$field=$_REQUEST['field'];
$limit=$_REQUEST['limit'];
$limit=$_REQUEST['limit'];
Step3: Make MySQL select query
After got values from url, you've to make MySQL query to select corresponding results from database. You can get zero or more than one values from urls for search. You should make MySQL query like below using PHP.
if($field!='' && $limit!='')
{
$cond="where name='".$field."' order by id desc limit 0, $limit";
}
if($field=='' && $limit!='')
{
$cond="order by id desc limit 0, $limit";
}
if($field!='' && $limit=='')
{
$cond="where name='".$field."' order by id desc limit 0, 50";
}
if($field=='' && $limit=='')
{
$cond="order by id desc limit 0, 50";
}
$q=mysql_query("select * from f_img $cond") or die(mysql_error());
{
$cond="where name='".$field."' order by id desc limit 0, $limit";
}
if($field=='' && $limit!='')
{
$cond="order by id desc limit 0, $limit";
}
if($field!='' && $limit=='')
{
$cond="where name='".$field."' order by id desc limit 0, 50";
}
if($field=='' && $limit=='')
{
$cond="order by id desc limit 0, 50";
}
$q=mysql_query("select * from f_img $cond") or die(mysql_error());
Step4: Add header for get output as JSON format
You must add header type ato your PHP script for get output as JSON format. This is like below
header('Content-Type: Application/json');
Step5: Add content to JSON file using PHP
You need to create 2 array for create output as multidimensional array. Retrieve values from query result using mysql_fetch_array. Then you push values to array using array_push() in PHP. Finally encode the results to display output as JSON format using json_encode().
The full PHP code for create search API is represented below,
<?php
error_reporting('E_ALL ^ E_NOTICE');
mysql_connect('localhost','root','') or die(mysql_error());
mysql_select_db('fitness') or die(mysql_error());
$field=$_REQUEST['field'];
$limit=$_REQUEST['limit'];
if($field!='' && $limit!='')
{
$cond="where name='".$field."' order by id desc limit 0, $limit";
}
if($field=='' && $limit!='')
{
$cond="order by id desc limit 0, $limit";
}
if($field!='' && $limit=='')
{
$cond="where name='".$field."' order by id desc limit 0, 50";
}
if($field=='' && $limit=='')
{
$cond="order by id desc limit 0, 50";
}
$q=mysql_query("select * from user $cond") or die(mysql_error());
header('Content-Type: Application/json');
$details=array();
$user=array();
while($res=mysql_fetch_array($q))
{
$user['name']=$res['name'];
$user['state']=$res['state'];
$user['country']=$res['country'];
array_push($details,$user);
}
//print_R($details);
echo json_encode($details);
?>
Your JSON output should be like below,
[
{"name":"Clark","state":"California","country":"USA"},
{"name":"Anderson","state":"Los Angeles","country":"USA"},
{"name":"Smith","state":"London","country":"United Kingdom"},
{"name":"Jones","state":"Cambridge","country":"United Kingdom"},
{"name":"Nathan","state":"Franche Comte","country":"France"},
{"name":"Marie","state":"Paris","country":"France"},
{"name":"Nastya","state":"St Petersburg ","country":"Russia"},
{"name":"Dima","state":"Moscow","country":"Russia"},
{"name":"Linh","state":"Hanoi","country":"vietnam"},
{"name":"Hoang","state":"Hai Phong","country":"vietnam"},
]
Step6 : .htaccess
Add following lines to your .htaccess file
RewriteRule ^search search.php [L]
Now you entered search on address bar, the .htaccess redirects you to search.php file. You can get search API using below url types.
http://www.phponwebsites.com/search?field=nathan&limit=10
http://www.phponwebsites.com/search?field=nathan
http://www.phponwebsites.com/search?limit=10
http://www.phponwebsites.com/search
No comments:
Post a Comment