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> </td>
<td id="result"> </td>
</tr>
<tr>
<td> </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> </td>
<td id="result"> </td>
</tr>
<tr>
<td> </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> </td>
<td id="result"> </td>
</tr>
<tr>
<td> </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> </td>
<td id="result"> </td>
</tr>
<tr>
<td> </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,这不是在数据库中插入数据。如果我只添加新数据,我将使用新数据获取现有数据库旧数据。但默认情况下,在添加新数据之前,我希望显示现有数据库数据