[請益] codeigniter用ajax()送資料全為0的問題
各位高手大家好,我是一位Codeigniter的初學者,對於這個框架還是有很多不太
清楚的地方。
事情是這樣的,我用codeigniter最近在架構一個應用程式,簡而言之就是送出表
單的問題,我沒有用controller送資料,而是用jQuery的ajax()來送出資料。
但是,ajax()成功地送出資料後,我進去mysql裡面看,發現送出的資料全為0。
我不知道該怎麼解決這一個問題,是不是我哪一個設定設定錯了,請各位可以幫
我檢查一下,對不起了,我想這個問題已經想好久了,實在是沒有任何頭緒,請
各位給予指教,謝謝。
這是一個很簡單的表單程式碼,檔案名稱是“test.php”,列於下方:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>test</title>
<link rel="stylesheet" href="<?=base_url("/css/bootstrap.css")?>">
<link rel="stylesheet" href="<?=base_url("/css/basic.css")?>">
<script src="<?=base_url("/js/jquery-1.10.2.min.js")?>"></script>
<script src="<?=base_url("/js/bootstrap.js")?>"></script>
<script src="<?=base_url("/js/practice.js")?>"></script>
</head>
<body>
<div style="margin:19px">
<form id="test_form" action="<?php echo site_url();?>/static_data/test_add">
USER:<input id="num" name="num" type="text" ><br>
NAME:<input id="name" name="name" type="text" ><br>
<input id=submit name="submit" class="btn" type="submit" value="傳送">
</form>
</div>
</body>
</html>
這是一個有兩個text_input跟一個submit button的表單,跟這個表單搭配的,
是"practice.js"檔案,列於下方:
$(document).ready(function(){
$("#test_form").submit(function(e){
e.preventDefault();
var tdata= $("#test_form").serialize();
var that = $(this);
$.ajax({
type: that.attr('method'),
url: that.attr('action'),
data: tdata,
success:function(tdata)
{
alert('SUCCESS!!');
},
error: function (XHR, status, response) {
alert('fail');
}
});
});
});
我的model的設定,是"paper.php",程式碼列於下方:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Paper extends CI_Model {
function __construct()
{
parent::__construct();
}
function test_add()
{
$this->load->helper('form');
$this->load->helper('html');
$this->load->database();
$data = array(
'num' => $this->input->post('num'),
'name' => $this->input->post('name'),
);
$this->db->insert('test_table',$data);
}
}
最後,這是我的controller的程式碼,檔案名稱是"static_data.php",列於下方:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Static_data extends CI_Controller {
public function test()
{
$this->load->view('test');
}
public function test_add()
{
$this->load->model("paper");
$this->paper->test_add();
}
}
對不起,問的有點亂,我盡力排版了,請各位給予指教,感激不盡 m(_ _)m
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.39.90.224
→
11/11 16:39, , 1F
11/11 16:39, 1F
→
11/11 16:43, , 2F
11/11 16:43, 2F
→
11/11 16:43, , 3F
11/11 16:43, 3F
→
11/12 08:36, , 4F
11/12 08:36, 4F
PHP 近期熱門文章
PTT數位生活區 即時熱門文章