Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
632 views
in Technique[技术] by (71.8m points)

php - Codeigniter base_url() not working properly for ajax

Using base_url() in ajax for getting the from database in codeigniter project. Given base_url is like http://domainname.com. It's works fine. If may i type my url like http://www.domainname.com in address bar it's not working. The code is

$.ajax
 ({
    type: "POST",
    url: base_url+'autocomplete/get_caste_list',
    data: {religion:$('#religion').val(),'csrf_test_name': csrf_value},
     cache: false,
     success: function(html)
        {
       $("#caste").html(html);
        } 
   });

Please help to solve this issue. Thanks

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

In my point of view the best solution is:

Just add the following script in header section of HTML.

<script type="text/javascript">
    var BASE_URL = "<?php echo base_url();?>";
</script>

Then in your Ajax code use BASE_URL as a variable. Means:

$.ajax
({
    type: "POST",
    url: BASE_URL+'autocomplete/get_caste_list',
    data: {religion:$('#religion').val(),'csrf_test_name': csrf_value},
    cache: false,
    success: function(html)
    {
        $("#caste").html(html);
    } 
});

Use your base url as following way:

$config['base_url'] = "http://{$_SERVER['HTTP_HOST']}/";

Very simple solution.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...