dongyi1982
2018-06-11 07:07
浏览 70

PHP输入表单到ajax请求json

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);
    }
});
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • dseigqk7443 2018-06-11 07:30
    已采纳

    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
    ]);
    
    已采纳该答案
    打赏 评论

相关推荐 更多相似问题