Php 如何在使用Codeigniter和AJAX从MySQL提交和获取数据时避免双重输出

Php 如何在使用Codeigniter和AJAX从MySQL提交和获取数据时避免双重输出,php,mysql,codeigniter,Php,Mysql,Codeigniter,问题: <form action="" method="post" accept-charset="utf-8"> <table align="center"> <tr> <td>Message :</td> <td> <textarea name="message

问题:

    <form action="" method="post" accept-charset="utf-8">

        <table align="center">

            <tr>
                <td>Message :</td>
                <td>
                    <textarea name="message" id="message" placeholder="Write here the message"></textarea>
                </td>
            </tr>

            <tr>
                <td>&nbsp;</td>
                <td id="result"> </td>
            </tr>

            <tr>
                <td>&nbsp;</td>
                <td>
                    <button type="button" id="submit">Submit</button>
                </td>
            </tr>

        </table>

    </form>
 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

    <script type="text/javascript">
        $(function() {

            $('#submit').click(function() {

                //get input data as a array
                var post_data = {
                    'message': $("#message").val(),
                    '<?php echo $this->security->get_csrf_token_name(); ?>': '<?php echo $this->security->get_csrf_hash(); ?>'
                };

                $.ajax({
                    type: "POST",
                    url: "http://192.168.1.17/ci_civic_soft/index.php/sample_control/index",
                    data: post_data,
                    success: function(message) {
                        // return success message to the id='result' position
                        $("#result").html(message);
                    }
                });

            });

        });
    </script>
<pre>


if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Sample_control extends CI_Controller
{
     function __construct()
     {
       parent::__construct();
       $this->load->model('sample_model');
     }

    public function index()
    {
        $this->load->view('sample_view');

        $data['message'] = $this->input->post('message');

        $insert = $this->sample_model->insertDataToDB($data);

            if ($insert) 
            {

                $tree_menu = $this->sample_model->getLastEnrtyData(); //getting tree from DB
                foreach($tree_menu as $tv)
                {
                    echo $tv['message'];
                }

            }

    }


}
</pre>
public function saveMessage(){
   $data['message'] = $this->input->post('message');

    $insert = $this->sample_model->insertDataToDB($data);

        if ($insert) 
        {

            $tree_menu = $this->sample_model->getLastEnrtyData(); //getting tree from DB
            foreach($tree_menu as $tv)
            {
                echo $tv['message'];
            }

        }
}
嗨,朋友,我正在使用codeIgniter中的ajax通过文本框将数据插入mysql数据库表,同时,我在前端显示数据库中的现有数据

一旦我将数据插入数据库,我将得到两个输入文本框和两个输出。请告诉我如何显示一个输入文本框和输出

我的原始代码如下:

示例视图:

    <form action="" method="post" accept-charset="utf-8">

        <table align="center">

            <tr>
                <td>Message :</td>
                <td>
                    <textarea name="message" id="message" placeholder="Write here the message"></textarea>
                </td>
            </tr>

            <tr>
                <td>&nbsp;</td>
                <td id="result"> </td>
            </tr>

            <tr>
                <td>&nbsp;</td>
                <td>
                    <button type="button" id="submit">Submit</button>
                </td>
            </tr>

        </table>

    </form>
 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

    <script type="text/javascript">
        $(function() {

            $('#submit').click(function() {

                //get input data as a array
                var post_data = {
                    'message': $("#message").val(),
                    '<?php echo $this->security->get_csrf_token_name(); ?>': '<?php echo $this->security->get_csrf_hash(); ?>'
                };

                $.ajax({
                    type: "POST",
                    url: "http://192.168.1.17/ci_civic_soft/index.php/sample_control/index",
                    data: post_data,
                    success: function(message) {
                        // return success message to the id='result' position
                        $("#result").html(message);
                    }
                });

            });

        });
    </script>
<pre>


if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Sample_control extends CI_Controller
{
     function __construct()
     {
       parent::__construct();
       $this->load->model('sample_model');
     }

    public function index()
    {
        $this->load->view('sample_view');

        $data['message'] = $this->input->post('message');

        $insert = $this->sample_model->insertDataToDB($data);

            if ($insert) 
            {

                $tree_menu = $this->sample_model->getLastEnrtyData(); //getting tree from DB
                foreach($tree_menu as $tv)
                {
                    echo $tv['message'];
                }

            }

    }


}
</pre>
public function saveMessage(){
   $data['message'] = $this->input->post('message');

    $insert = $this->sample_model->insertDataToDB($data);

        if ($insert) 
        {

            $tree_menu = $this->sample_model->getLastEnrtyData(); //getting tree from DB
            foreach($tree_menu as $tv)
            {
                echo $tv['message'];
            }

        }
}

信息:
提交
$(函数(){
$(“#提交”)。单击(函数(){
//以数组形式获取输入数据
var post_数据={
'message':$(“#message”).val(),
'': ''
};
$.ajax({
类型:“POST”,
url:“http://192.168.1.17/ci_civic_soft/index.php/sample_control/index",
数据:post_数据,
成功:功能(消息){
//将成功消息返回到id='result'位置
$(“#结果”).html(消息);
}
});
});
});
样本控制:

    <form action="" method="post" accept-charset="utf-8">

        <table align="center">

            <tr>
                <td>Message :</td>
                <td>
                    <textarea name="message" id="message" placeholder="Write here the message"></textarea>
                </td>
            </tr>

            <tr>
                <td>&nbsp;</td>
                <td id="result"> </td>
            </tr>

            <tr>
                <td>&nbsp;</td>
                <td>
                    <button type="button" id="submit">Submit</button>
                </td>
            </tr>

        </table>

    </form>
 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

    <script type="text/javascript">
        $(function() {

            $('#submit').click(function() {

                //get input data as a array
                var post_data = {
                    'message': $("#message").val(),
                    '<?php echo $this->security->get_csrf_token_name(); ?>': '<?php echo $this->security->get_csrf_hash(); ?>'
                };

                $.ajax({
                    type: "POST",
                    url: "http://192.168.1.17/ci_civic_soft/index.php/sample_control/index",
                    data: post_data,
                    success: function(message) {
                        // return success message to the id='result' position
                        $("#result").html(message);
                    }
                });

            });

        });
    </script>
<pre>


if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Sample_control extends CI_Controller
{
     function __construct()
     {
       parent::__construct();
       $this->load->model('sample_model');
     }

    public function index()
    {
        $this->load->view('sample_view');

        $data['message'] = $this->input->post('message');

        $insert = $this->sample_model->insertDataToDB($data);

            if ($insert) 
            {

                $tree_menu = $this->sample_model->getLastEnrtyData(); //getting tree from DB
                foreach($tree_menu as $tv)
                {
                    echo $tv['message'];
                }

            }

    }


}
</pre>
public function saveMessage(){
   $data['message'] = $this->input->post('message');

    $insert = $this->sample_model->insertDataToDB($data);

        if ($insert) 
        {

            $tree_menu = $this->sample_model->getLastEnrtyData(); //getting tree from DB
            foreach($tree_menu as $tv)
            {
                echo $tv['message'];
            }

        }
}

如果(!defined('BASEPATH'))退出('不允许直接脚本访问');
类示例\u控件扩展CI\u控制器
{
函数_u构造()
{
父项::_构造();
$this->load->model('sample_model');
}
公共职能指数()
{
$this->load->view('sample_view');
$data['message']=$this->input->post('message');
$insert=$this->sample\u model->insertDataToDB($data);
如果($插入)
{
$tree\u menu=$this->sample\u model->getLastEnrtyData();//从数据库获取树
foreach($tree\u菜单为$tv)
{
echo$tv['message'];
}
}
}
}
示例\u型号:

    <form action="" method="post" accept-charset="utf-8">

        <table align="center">

            <tr>
                <td>Message :</td>
                <td>
                    <textarea name="message" id="message" placeholder="Write here the message"></textarea>
                </td>
            </tr>

            <tr>
                <td>&nbsp;</td>
                <td id="result"> </td>
            </tr>

            <tr>
                <td>&nbsp;</td>
                <td>
                    <button type="button" id="submit">Submit</button>
                </td>
            </tr>

        </table>

    </form>
 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

    <script type="text/javascript">
        $(function() {

            $('#submit').click(function() {

                //get input data as a array
                var post_data = {
                    'message': $("#message").val(),
                    '<?php echo $this->security->get_csrf_token_name(); ?>': '<?php echo $this->security->get_csrf_hash(); ?>'
                };

                $.ajax({
                    type: "POST",
                    url: "http://192.168.1.17/ci_civic_soft/index.php/sample_control/index",
                    data: post_data,
                    success: function(message) {
                        // return success message to the id='result' position
                        $("#result").html(message);
                    }
                });

            });

        });
    </script>
<pre>


if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Sample_control extends CI_Controller
{
     function __construct()
     {
       parent::__construct();
       $this->load->model('sample_model');
     }

    public function index()
    {
        $this->load->view('sample_view');

        $data['message'] = $this->input->post('message');

        $insert = $this->sample_model->insertDataToDB($data);

            if ($insert) 
            {

                $tree_menu = $this->sample_model->getLastEnrtyData(); //getting tree from DB
                foreach($tree_menu as $tv)
                {
                    echo $tv['message'];
                }

            }

    }


}
</pre>
public function saveMessage(){
   $data['message'] = $this->input->post('message');

    $insert = $this->sample_model->insertDataToDB($data);

        if ($insert) 
        {

            $tree_menu = $this->sample_model->getLastEnrtyData(); //getting tree from DB
            foreach($tree_menu as $tv)
            {
                echo $tv['message'];
            }

        }
}

类示例_模型扩展了CI_模型
{/*
*将数据插入内容表
*/
公共函数insertDataToDB($data)
{
返回$this->db->insert('content',$data);
}
/*
*从内容表中获取插入的数据
*/
公共函数getLastEnrtyData()
{
$query=$this->db->query(“调用内容()”);
返回$query->result_array();
}
}

将插入代码移动到单独的函数中,如saveMessage()。您正在索引中加载视图,因此它将由ajax返回


hi frnd,这不是在数据库中插入数据。如果我只添加新数据,我将使用新数据获取现有数据库旧数据。但默认情况下,在添加新数据之前,我希望显示现有数据库数据