如何在没有页面重新加载的情况下使用php和codeigniter发布和获取数据

时间:2014-01-12 10:47:53

标签: php codeigniter php-5.3

我是codeigniter MVC的初学者。

问题:如何在没有页面刷新或重新加载的情况下使用codeigniter和PHP发送和接收数据。

注意:请使用ajax或jquery或两者来提供一些MVC示例。

1 个答案:

答案 0 :(得分:1)

谷歌有很多这方面的教程。 但这是使用CodeIgniter和Jquery的简单示例:

  1. 在控制器文件夹中创建名为test_controller.php的文件。把这段代码:

    <?php
    class Test_controller extends CI_Controller {
            public function index() 
            {
                    $this->load->view("test_view"); 
            }
    
            public function do_ajax()
            {
                    $name=$this->input->post("name"); //get posted data
                    echo "Hello $name, I am AJAX"; //return response
            }
    
    }
    
  2. 在View文件夹中创建名为test_view的文件。把这段代码:

    <html>
            <head>
                    <script src="http://code.jquery.com/jquery-1.10.2.min.js" type="text/javascript"></script>
                    <script>
                            function getpost_ajax() {
                                    var name=$("#name").val();
    
                                    //begin ajax
                                    $.post("<?php echo site_url('stack/test_controller/do_ajax'); ?>", { 
                                            //data to post
                                            name:name
                                    }, function(data){
                                            //on success, alert the data
                                            alert(data)                                                        
                                    });
                            }
                    </script>
            </head>
            <body>
                    <input type="text" id="name" />
                    <input type="button" onclick="getpost_ajax()" value="GO!"/>
            </body>
    </html>
    
  3. 在浏览器中打开:http://localhost/your_site_folder/index.php/test_controller。用任何数据填充文本框,然后单击GO!。它将从文本框中发布数据,并提醒响应。