在哪里放置.php文件为ajax?

时间:2014-11-18 06:09:33

标签: javascript php jquery ajax codeigniter

我试图在我的codeigniter中实现ajax。 我在这样的js中使用它:

data={action:'getstreets'};
$.ajax({
    type: "POST",
    url: "../ajax",
    data: data,
    success: function (data, textStatus, jqXHR) 
    {
        console.log(data);
    }
});

ajax.php是一个控制器,代码如下:

<?php
class Ajax extends CI_Controller {

    public function index()
    {
        $this->load->database();
        switch($this->input->get_post('action'))
        {
            case "getstreets":
                $query = $this->db->query('SELECT 1;');
                echo 'WIN';
            break;
            default:
                echo "Invalid action";
            break;
        }
    }
}
?>

这是使用控制器的方式吗?黑客无法以某种方式获取这些数据吗?

2 个答案:

答案 0 :(得分:1)

检查一下

data={action:'getstreets'};
$.ajax({
    type: "POST",
    url: "<?php echo base_url('ajax/index')?>", //Here I have added code
    data: data,
    success: function (data, textStatus, jqXHR) 
    {
        console.log(data);
    }
});

确保加载URL帮助程序,否则您可以像http://website.com/index.php/ajax/index

一样静态编写

答案 1 :(得分:1)

Codeigniter是MVC框架,您无法放置任何.php文件。你应该有控制器和动作。拜托,看看这个。 http://blog.codinghorror.com/understanding-model-view-controller/