I'm a complete noob trying out my hands on Ajax and Jquery. By following an online tutorial, I successfully made a search engine using MySQL as the backend database;
<script>
$(function() {
$(".search_butn").click(function() {
// getting the value that user typed
var searchString = $("#input_box").val();
// forming the queryString
var data = 'search='+ searchString;
// if searchString is not empty
if(searchString) {
// ajax call
$.ajax({
type: "POST",
url: "search.php", //server-side script to db (mysql)
data: data,
beforeSend: function(html) { // this happens before actual call
$("#results").html('');
$("#searchresults").show();
$(".word").html(searchString);
},
success: function(html){ // this happens after we get results
$("#results").show();
$("#results").append(html);
}
});
}
return false;
});
});
</script>
<form method="post" action="search.php">
<div id="DIV">
<input type="text" name="search" id="input_box" class='input_box'/>
<input type="submit" value="Search" class="search_butn" />
</div>
</form><br/>
<div>
<div id="searchresults"> </div>
<ul id="results" class="update">
</ul>
</div>
Now I want to go a step further by searching using a RESTful api like this one from Solr http://localhost:9090/solr/select?q=employee%3A%28james+blunt%29&wt=json&indent=true
I need someone to please show me how I can go about doing this.
To create a RESTful API, you could write some PHP code to chop down the url of the request. You should make Apache - your webserver I suppose - redirect all URLs with a certain prefix to this PHP script.
So, say a user requests http://www.somename.com/my_api/some/shiny?suffix
, you want Apache to redirect this URL to the script my_api.php
, such that my_api.php
can chop down the entire URL and do stuff based on that.
For Apache doing so, read up on apache mod_rewrite: http://httpd.apache.org/docs/current/mod/mod_rewrite.html
For more detailed treatment of RESTful APIs, I can suggest this tutorial: http://www.restapitutorial.com/