我是PHP和CodeIgniter的新手。我一直在試圖在柱表中添加一個新數據,或者編輯一些數據而沒有成功。事情是我可以刪除數據就好了。所以我不知道問題是什麼。CodeIgniter添加和更新數據庫沒有成功,沒有錯誤,沒有,只是不會工作
Stud_controller
<?php
class Stud_controller extends CI_Controller {
function __construct(){
parent::__construct();
$this->load->helper('url');
$this->load->database();
}
public function index(){
$query = $this->db->get('stud');
$data['records'] = $query->result();
$this->load->helper('url');
$this->load->view('Stud_view', $data);
}
public function add_student_view(){
$this->load->helper('form');
$this->load->view('Stud_add');
}
public function add_student(){
$this->load->model('Stud_Model');
$data = array(
'roll_no' => $this->input->post('roll_no'),
'name' => $this->input->post('name')
);
$this->Stud_Model->insert($data);
$query = $this->db->get('stud');
$data['records'] = $query->result();
$this->load->view('Stud_view', $data);
}
public function update_student_view(){
$this->load->helper('form');
$roll_no = $this->uri->segment('3');
$query = $this->db->get_where('stud', array('roll_no' => $roll_no));
$data['records'] = $query->result();
$data['old_roll_no'] = $roll_no;
$this->load->view('Stud_edit', $data);
}
public function update_student(){
$this->load->model('Stud_Model');
$data = array(
'roll_no' => $this->input->post('roll_no'),
'name' => $this->input->post('name')
);
$old_roll_no = $this->input->post('old_roll_no');
$this->Stud_Model->update($data, $old_roll_no);
$query = $this->db->get('stud');
$data['records'] = $query->result();
$this->load->view('Stud_view', $data);
}
public function delete_student(){
$this->load->model('Stud_Model');
$roll_no = $this->uri->segment('3');
$this->Stud_Model->delete($roll_no);
$query = $this->db->get('stud');
$data['records'] = $query->result();
$this->load->view('Stud_view', $data);
}
}
?>
Stud_Model
<?php
class Stud_Model extends CI_Model {
function __construct(){
parent::__construct();
}
public function insert($data){
if ($this->db->insert('stud', $data)){
return true;
}
}
public function delete($roll_no){
if ($this->db->delete('stud', 'roll_no =' . $roll_no)){
return true;
}
}
public function update($data, $old_roll_no){
$this->db->set($data);
$this->db->where('roll_no', $old_roll_no);
$this->db->update('stud', $data);
}
}
?>
Stud_add
<!DOCTYPE HTML>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Students Example</title>
</head>
<body>
<form method = "" action = "">
<?php
echo form_open('Stud_controller/add_student');
echo form_label('Roll No.');
echo form_input(array('id' => 'roll_no', 'name' => 'roll_no'));
echo "<br />";
echo form_label('Name');
echo form_input(array('id' => 'name', 'name' => 'name'));
echo "<br />";
echo form_submit(array('id' => 'submit', 'value' => 'Submit'));
echo form_close();
echo "<br />";
echo "<a href='".base_url()."index.php'>Home</a></td>";
?>
</form>
</body>
</html>
Stud_edit
<!DOCTYPE html>
<html lang="eng">
<head>
<meta charset="utf-8">
<title>Students Example</title>
</head>
<body>
<form action="" method="">
<?php
echo form_open('Stud_controller/update_student');
echo form_hidden('old_roll_no', $old_roll_no);
echo form_label('Roll No.');
echo form_input(array('id'=>'roll_no', 'name'=>'roll_no', 'value'=>$records[0]->roll_no));
echo "<br />";
echo form_label('Name');
echo form_input(array('id'=>'name', 'name'=>'name', 'value'=>$records[0]->name));
echo "<br />";
echo form_submit(array('id'=>'submit', 'value'=>'Submit'));
echo form_close();
echo "<a href='".base_url()."index.php'>Home</a></td>";
?>
</body>
</html>
的問題肯定需要更好的說明。按照http://stackoverflow.com/help/how-to-ask中的說明操作 –