I have a file search.php where I get the input from the form and I create an url. I want the data(url_api) to pass it to an AJAX script, where I can request an json. How can I pass the variable api_url to ajax data ?
Here is my code:
if(filter_input(INPUT_POST, 'submit')){
$area=filter_input(INPUT_POST, 'm', FILTER_SANITIZE_STRING);
// The access url is created with data from the form
$api_url = "http://wwww/api/v1/wwww?";
if ($m !== "") {
$api_url = $api_url . "m=" . $m;
}
$api_url = $api_url . "&api_key=wxaaaaaaaaaaaaaaaaaaaaaaaa";
And the ajax script
$.ajax({
url: 'search.php', //This is the current doc
type: "POST",
dataType:'jsonp', // add json datatype to get json
data: ?,
success: function(data){
console.log(data);
}
});
In your JS script:
$.ajax({
url: 'search.php', //target PHP script
type: 'POST', //data will be send with POST method
dataType: 'json', //data will be sent as JSON
data: { //data sent to PHP script
key1: 'val1', //keys / values
key2: 'val2'
},
success: function(data) {
//get the url sent back by PHP and do whatever you want with it
console.log(data.url);
}
});
In your PHP script:
//get data post by Ajax as POST parameters
$key1Val = $_POST['key1']; // === 'val1'
$key2Val = $_POST['key2']; // === 'val2'
//build your $url
//send back built URL to your JS script as JSON
echo json_encode([
'url' => $url
]);