gpt4 book ai didi

php - 如何在编辑表单中编辑除 1 字段外的公司 codeigniter

转载 作者:行者123 更新时间:2023-11-29 13:50:20 24 4
gpt4 key购买 nike

我有一个用于编辑公司数据的表单,例如:姓名、国家/地区、电话号码等...

我还有一个用于将公司添加到我的数据库中的表单。在 addform 中,我有一个上传功能,因此公司可以上传 Logo 。

我的问题是,当我想编辑公司时,我删除了上传功能。但是当我提交时, Logo 字段设置为 0,因为我将其留空。

我该如何解决这个问题?

我尝试了类似 if(isset($this->input->post('logo'))){ some code }else{ 'Logo' => $this->input->post( ' Logo ') };

我的编辑表单如下所示:

<?= form_open('members/update/'.$id);?>
<table>
<br/>
<b>NAW Gegevens</b>
<tr>
<td><?= form_label('Bedrijfsnaam:');?></td>
<td><?= form_input('Bedrijfsnaam', $info['Bedrijfsnaam']);?><small> (Spaties niet toegestaan)</small></td>
</tr>

<tr>
<td><?= form_label('Adres:');?></td>
<td><?= form_input('Adres', $info['Adres']);?></td>
</tr>

<tr>
<td><?= form_label('Postcode:');?></td>
<td><?= form_input('Postcode', $info['Postcode']);?></td>
</tr>

<tr>
<td><?= form_label('Plaats:');?></td>
<td><?= form_input('Plaats', $info['Plaats']);?></td>
</tr>

<tr>
<td><?= form_label('Telefoonnummer:');?></td>
<td><?= form_input('Telefoonnummer', $info['Telefoonnummer']);?></td>
</tr>

<tr>
<td><?= form_label('Website:');?></td>
<td><?= form_input('Website', $info['Website']);?></td>
</tr>

<tr>
<td><?= form_label('Email:');?></td>
<td><?= form_input('Email', $info['Email']);?></td>
</tr>

<tr>
<td><?= form_label('Profiel:');?></td>
<td><?= form_textarea('Profiel', $info['Profiel']);?></td>
</tr>

<tr>
<td><?= form_label('Categorieen'); ?></td>
<td><?= form_dropdown('categorieen', $opties); ?></td>
</tr>

<tr>
<td><?= form_submit('submit', 'Opslaan');?> <?= form_reset('reset', 'Reset');?></td>
</tr>


</table>
<?= form_close()?>

我的 Controller 功能:

function updatebedrijven()
{
$dbres = $this->db->get('categorieen');
$ddmenu = array();
foreach ($dbres->result_array() as $tablerow) {
$ddmenu[$tablerow['idcategorieen']] = $tablerow['Categorie'];
}
$data['opties'] = $ddmenu;
$id = $this->uri->segment(3);

$data['info'] = $this->members_model->getbedrijf($id);
$data['id'] = $id;
$this->load->view('members/header');
$this->load->view('members/editform', $data);
$this->load->view('members/footer');
}

function update()
{
$id = $this->uri->segment(3);
echo 'id: '.$id;
$data = array(
'Bedrijfsnaam' => $this->input->post('Bedrijfsnaam'),
'Postcode' => $this->input->post('Postcode'),
'Plaats' => $this->input->post('Plaats'),
'Telefoonnummer' => $this->input->post('Telefoonnummer'),
'Email' => $this->input->post('Email'),
'Website' => $this->input->post('Website'),
'Profiel' => $this->input->post('Profiel'),
'Adres' => $this->input->post('Adres'),
'logo' => $this->input->post('logo')
);
$this->members_model->updatebedrijf($id, $data);
$b = $this->session->userdata('idbedrijven');
redirect("members/$b");
}

当我将该字段留空时,如何使表单记住当前 Logo ?

最佳答案

如果该字段为空或不存在,

$this->input->post('logo') 返回 false(请参阅 http://ellislab.com/codeigniter/user-guide/libraries/input.html )。

由于您使用 false 值更新 Logo 字段,因此它在数据库中被覆盖。在设置此字段之前检查该字段是否已设置: 'logo' => $this->input->post('logo')

您可以看看http://ellislab.com/codeigniter/user-guide/database/active_record.html#update

关于php - 如何在编辑表单中编辑除 1 字段外的公司 codeigniter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16772811/

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