gpt4 book ai didi

php - 奇怪的表更新 codeigniter $this->db->update

转载 作者:行者123 更新时间:2023-11-30 22:45:57 26 4
gpt4 key购买 nike

我在更新数据库中的一个表时遇到问题。我总是使用相同的方法,我没有问题。虽然在这种情况下我有一个问题......

代码:

View :

<fieldset>
<legend>Modifica Dati Check-in Cliente</legend>

<?php
$passeggeri='placeholder="Passeggeri"';
$animali='placeholder="Animali"';
$note='placeholder="Note"';

echo form_open('site/esegui_modifica_record_check_in');
echo form_hidden('id',$id[0]->id);
echo form_hidden('rif_parcheggio',$id[0]->rif_parcheggio);
echo form_input('Passeggeri',set_value('passeggeri',$id[0]->passeggeri),$passeggeri);
echo form_input('Animali',set_value('animali',$id[0]->animali),$animali);
echo form_input('Note',set_value('note',$id[0]->note),$note);
?> <br/> <input type="datetime-local" name="data_in_inserita" value="<?php echo strftime('%Y-%m-%dT%H:%M', strtotime($id[0]->data_in));?>" /> <?php
echo form_submit('submit','Modifica');
echo form_close();

?>
</fieldset>

Controller :

function esegui_modifica_record_check_in() {
$this->load->model('membership_model');
if($query = $this->membership_model->esegui_modifica_record_check_in())
{
$this->load->view('check_in_auto_succesful');
}
else
{
$this->load->view('admin');
}
}

型号:

function esegui_modifica_record_check_in() {
$update_record_check2= array (
'passeggeri' => $this->input->post('passeggeri'),
'animali' => $this->input->post('animali'),
'note' => $this->input->post('note'),
'data_in' => $this->input->post('data_in_inserita')
);

$id=$this->input->post('id');
$this->db->where('id',$id);
$insert = $this->db->update('check2', $update_record_check2);
return $insert;
}

查询已执行,但值更新为已修改字段的零 (0) 字符。

很奇怪!这是我对 codeigniter 更新功能的第一个问题

我没有一个明确的想法。请你帮助我好吗?非常感谢

通过

最佳答案

调试的第一件事是确保值确实被传递到您的模型方法中。首先在 Controller 上或在模型内部进行调试:

Controller :

function esegui_modifica_record_check_in() 
{
var_dump($this->input->post());
// rest of codes
}

型号:

function esegui_modifica_record_check_in() 
{
var_dump($this->input->post());
// rest of codes
}

然后,假设您还没有修复它。输入的 name=""

大小写不匹配
echo form_input('Passeggeri',set_value('passeggeri',$id[0]->passeggeri),$passeggeri);
'passeggeri' => $this->input->post('passeggeri'),
// Passeggeri !== passeggeri

echo form_input('Animali',set_value('animali',$id[0]->animali),$animali);
'animali' => $this->input->post('animali'),
// Animali !== animali

echo form_input('Note',set_value('note',$id[0]->note),$note);
'note' => $this->input->post('note'),
// Animali !== animali

你也应该考虑到这一点。您需要遵循相同的大小写字母。让它们相同

或者:

echo form_input('Passeggeri',
$this->input->post('Passeggeri')

或者

echo form_input('passeggeri',
$this->input->post('passeggeri')

旁注:

按照我上面的建议,我会尽量简化并使用普通形式。

<form method="POST" action="<?php echo site_url('site/esegui_modifica_record_check_in'); ?>">
<input type="text" name="passeggeri" value="<?php echo $id[0]->passeggeri; ?>" placeholder="Passeggeri" />
<!-- and other text box inputs -->
</form>

关于php - 奇怪的表更新 codeigniter $this->db->update,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29617824/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com