我有一个带下拉菜单的表单,该菜单的选项从“ dropdown_list”表中的“ nama_guru”行填充。 我想做的就是根据提交的下拉菜单选项删除该表的“ nama_guru”列的行。
这里有一些代码。
下拉菜单
<div class="left-inner-addon">
<select input type="text" name="nama_guru" value="<?php echo $nama_guru ?>" class="form-control" id="inputNama" >
<?php
foreach($nama_guru as $row)
{
echo '<option value="'.$row->nama_guru.'">'.$row->nama_guru.'</option>';
}
?>
</select>
</div>
控制器
function data_kuesioner_save($idx = '', $where =''){
if($_POST){
$nama_guru = $this->input->post('nama_guru');
if($status == 'baru'){
$data = array(
'nama_guru' => $nama_guru,
);
$sukses = '
<div class="alert alert-success">
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
<strong>Sukses!</strong> Data anda telah tesimpan.
</div>
';
$this->siswamodel->deletedropdowndata($nama_guru);
$this->session->set_flashdata('sukses', $sukses);
$this->siswamodel->insertdata('data_kuesioner',$data);
redirect('siswa/data_kuesioner_view');
}
}
}
型号
class Siswamodel extends CI_Model {
function insertdata($tabel, $data){
return $this->db->insert($tabel,$data);
}
function deldata($tabel,$where){
return $this->db->delete($tabel,$where);
}
function updatedata($tabel,$data,$where){
return $this->db->update($tabel,$data,$where);
}
function selectdata($where = ''){
return $this->db->query("select * from $where;");
}
function printjointable($where = ''){
return $this->db->query("select * from $where;");
}
function deletedropdowndata($idx){
$this->db->where('nama_guru', $idx);
$this->db->delete('isi_dropdown1');
}
}
答案 0 :(得分:0)
欢迎来到SOF!
首先,我们需要更正下拉菜单。我们不会将输入类型设置为已经设置为“ select”的select DOM元素,这意味着下拉菜单。其次,value属性是用于元素本身的选项。请参见以下代码。
<div class="left-inner-addon">
<select name="nama_guru" class="form-control" id="inputNama" >
<?php
foreach($nama_guru as $row)
{
echo '<option value="'.$row->nama_guru.'">'.$row->nama_guru.'</option>';
}
?>
</select>
</div>
好的,我们已经修复了标记。现在在删除部分上工作。没有表格,我们无法做到,我相信您下面的内容会封装其余的标记。
<form action="" method="post">
// Form Content ...
</form>
当我们什么都没提及时,表单将提交给自己,这意味着我们可以使用与输出表单相同的函数来捕获请求。
让我们在您的Controller功能上工作
public function data_kuesioner_view()
{
if($_POST)
{
// Delete data from table
$this->siswamodel->deletedropdowndata($_POST);
// Success Message
$this->session->set_flashdata('success', 'Congratulations, Data removed.');
// Redirect to the form
redirect(base_url().'siswa/data_kuesioner_view');
}
else
{
// load form view
$this->load->view('form');
}
}
// Model function
public function deletedropdowndata($data)
{
$this->db->where('nama_guru', $data['nama_guru']);
$this->db->delete('isi_dropdown1');
return true;
}
让我们显示我们的即时消息
在表格上方放在代码下面;
<?php if(!empty($this->session->flashdata('success'))){?>
<div class="alert alert-success">
<?php print_r($this->session->flashdata('success'));?>
</div>
<?php }?>
答案 1 :(得分:0)
返回查询
function deletedropdowndata($idx){
return $this->db->where('nama_guru', $idx)->delete('isi_dropdown1');
}