【问题标题】:I cannot edit the information with Codeigniter我无法使用 Codeigniter 编辑信息
【发布时间】:2022-01-28 11:02:54
【问题描述】:

我已经修改了数千次我的Controller和我负责编辑DB信息的Model,但我不知道哪里出了问题。我已经修改了名称,使其与数据库的列名相对应,但似乎没有任何效果。 CRUD 的其他元素都在工作,但这是唯一一个不工作的元素。

这里我包括控制器 controller/itemCRUD/edit

    public function update($id)
    {
        $this->form_validation->set_rules('fechaalta', 'Fechaalta');
        $this->form_validation->set_rules('nombre', 'Nombre');
        $this->form_validation->set_rules('apellidos', 'Apellidos');
        $this->form_validation->set_rules('nif', 'Nif');
        $this->form_validation->set_rules('direccion', 'Direccion');
        $this->form_validation->set_rules('localidad', 'Localidad');
        $this->form_validation->set_rules('cp', 'Cp');
        $this->form_validation->set_rules('provincia', 'Provincia');
        $this->form_validation->set_rules('comunidad', 'Comunidad');
        $this->form_validation->set_rules('telefono', 'Telefono');
        $this->form_validation->set_rules('movil', 'Movil');
        $this->form_validation->set_rules('email', 'Email');
        $this->form_validation->set_rules('lugarnacimiento', 'Lugarnacimiento');
        $this->form_validation->set_rules('fechanacimiento', 'Fechanacimiento');
        $this->form_validation->set_rules('cuentabancaria', 'Cuentabancaria');
        $this->form_validation->set_rules('telefonotrabajo', 'Telefonotrabajo');
        $this->form_validation->set_rules('lugartrabajo', 'Lugartrabajo');
        $this->form_validation->set_rules('direcciontrabajo', 'Direcciontrabajo');
        $this->form_validation->set_rules('localidadtrabajo', 'Localidadtrabajo');
        $this->form_validation->set_rules('colegiado', 'Colegiado');
        $this->form_validation->set_rules('ejerciente', 'Ejerciente');
        $this->form_validation->set_rules('titulacion', 'Titulacion');
        $this->form_validation->set_rules('otrostitulos', 'Otrostitulos');
        $this->form_validation->set_rules('especialidad', 'Especialidad');
        $this->form_validation->set_rules('ambitotrabajo', 'Ambitotrabajo');
        $this->form_validation->set_rules('sector', 'Sector');
        $this->form_validation->set_rules('solicitahabilitacion', 'Solicitahabilitacion');
        $this->form_validation->set_rules('diplomaturalogopedia', 'Diplomaturalogopedia');
        $this->form_validation->set_rules('altabolsatrabajo', 'altabolsatrabajo');
        $this->form_validation->set_rules('traslado', 'Traslado');
        $this->form_validation->set_rules('colegioorigen', 'Colegioorigen');
        $this->form_validation->set_rules('numcolegiado', 'Numcolegiado');
        $this->form_validation->set_rules('observaciones', 'Observaciones');
        $this->form_validation->set_rules('publicidad', 'Publicidad');
        $this->form_validation->set_rules('activo', 'Activo');

        if ($this->form_validation->run() == FALSE) {
            $this->session->set_flashdata('errors', validation_errors());
            redirect(base_url('itemCRUD/edit/' . $id));
        } else {
            $this->itemCRUD->update_item($id);
            redirect(base_url('itemCRUD'));
        }
    }

这里是模型models/itemCRUDmodel/update_item

    public function update_item($id)
    {
        $data = array(
            'Fechaalta' => $this->input->post('fechaalta'),
            'Nombre' => $this->input->post('nombre'),
            'Apellidos' => $this->input->post('apellidos'),
            'NIF' => $this->input->post('nif'),
            'Direccion' => $this->input->post('direccion'),
            'Localidad' => $this->input->post('localidad'),
            'CP' => $this->input->post('cp'),
            'Provincia' => $this->input->post('provincia'),
            'Comunidad' => $this->input->post('comunidad'),
            'Telefono' => $this->input->post('telefono'),
            'Movil' => $this->input->post('movil'),
            'Email' => $this->input->post('email'),
            'Lugarnacimiento' => $this->input->post('lugarnacimiento'),
            'Fechanacimiento' => $this->input->post('fechanacimiento'),
            'Cuentabancaria' => $this->input->post('cuentabancaria'),
            'Telefonotrabajo' => $this->input->post('telefonotrabajo'),
            'Lugartrabajo' => $this->input->post('lugartrabajo'),
            'Direcciontrabajo' => $this->input->post('direcciontrabajo'),
            'Localidadtrabajo' => $this->input->post('localidadtrabajo'),
            'Colegiado' => $this->input->post('colegiado'),
            'Ejerciente' => $this->input->post('ejerciente'),
            'Titulacion' => $this->input->post('titulacion'),
            'Otrostitulos' => $this->input->post('otrostitulos'),
            'Especialidad' => $this->input->post('especialidad'),
            'Ambitotrabajo' => $this->input->post('ambitotrabajo'),
            'Sector' => $this->input->post('sector'),
            'Solicitahabilitacion' => $this->input->post('solicitahabilitacion'),
            'Diplomaturalogopedia' => $this->input->post('diplomaturalogopedia'),
            'Altabolsatrabajo' => $this->input->post('altabolsatrabajo'),
            'Trasladado' => $this->input->post('traslado'),
            'Colegiorigen' => $this->input->post('colegiorigen'),
            'Numcolegiado' => $this->input->post('numcolegiado'),
            'Observaciones' => $this->input->post('observaciones'),
            'Publicidad' => $this->input->post('publicidad'),
            'Activo' => $this->input->post('activo'),
        );

        if ($id == 0) {
            return $this->db->insert('colegiados', $data);
        } else {
            $this->db->where('id', $id);
            return $this->db->update('colegiados', $data);
        }
    }

这是视图的一部分views/itemCRUD/edit

    <section class="junta app" style="margin-top: 2.1em; margin-bottom: -5.1em; height: 2700;">

    <?php $this->load->view('templates/menu_admin'); ?>

    <div class="container" style="width: 70%; padding:0; margin-right:2em; margin-top: -185em;">
        <?php defined('BASEPATH') OR exit('No direct script access allowed'); ?>

        <?php echo form_open('itemCRUD/update/'.$item->Id); ?>
            <div class="row">

            <?php
            if ($this->session->flashdata('errors')){
                echo '<div class="alert alert-danger">';
                echo $this->session->flashdata('errors');
                echo "</div>";
            }


            ?>

            <h3 style="color: #004987; text-transform: uppercase; font-size:3em">Editar Colegiado</h3>

            <div class="row">
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Fecha Alta:</strong>
                    <input type="text" name="fechaalta" class="form-control" value="<?php echo $item->FechaAlta; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Nombre:</strong>
                    <input type="text" name="nombre" class="form-control" value="<?php echo $item->Nombre; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Apellidos:</strong>
                    <input type="text" name="apellidos" class="form-control" value="<?php echo $item->Apellidos; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Nif:</strong>
                    <input type="text" name="nif" class="form-control" value="<?php echo $item->NIF; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Dirección:</strong>
                    <input type="text" name="direccion" class="form-control" value="<?php echo $item->Direccion; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Localidad:</strong>
                    <input type="text" name="localidad" class="form-control" value="<?php echo $item->Localidad; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Código Postal:</strong>
                    <input type="text" name="cp" class="form-control" value="<?php echo $item->CP; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Provincia:</strong>
                    <input type="text" name="provincia" class="form-control" value="<?php echo $item->Provincia; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Comunidad:</strong>
                    <input type="text" name="comunidad" class="form-control" value="<?php echo $item->Comunidad; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Teléfono:</strong>
                    <input type="text" name="telefono" class="form-control" value="<?php echo $item->Telefono; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Móvil:</strong>
                    <input type="text" name="movil" class="form-control" value="<?php echo $item->Movil; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Email:</strong>
                    <input type="text" name="email" class="form-control" value="<?php echo $item->Email; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Lugar de Nacimiento:</strong>
                    <input type="text" name="lugarnacimiento" class="form-control" value="<?php echo $item->LugarNacimiento; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Fecha de Nacimiento:</strong>
                    <input type="text" name="fechanacimiento" class="form-control" value="<?php echo $item->FechaNacimiento; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Cuenta Bancaria:</strong>
                    <input type="text" name="cuentabancaria" class="form-control" value="<?php echo $item->CuentaBancaria; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Teléfono de trabajo:</strong>
                    <input type="text" name="telefonotrabajo" class="form-control" value="<?php echo $item->TelefonoTrabajo; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Lugar de Trabajo:</strong>
                    <input type="text" name="lugartrabajo" class="form-control" value="<?php echo $item->LugarTrabajo; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Dirección de Trabajo:</strong>
                    <input type="text" name="direcciontrabajo" class="form-control" value="<?php echo $item->DireccionTrabajo; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Localidad de Trabajo:</strong>
                    <input type="text" name="localidadtrabajo" class="form-control" value="<?php echo $item->LocalidadTrabajo; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Nº de Colegiado:</strong>
                    <input type="text" name="colegiado" class="form-control" value="<?php echo $item->Colegiado; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Ejerciente:</strong>
                    <input type="text" name="ejerciente" class="form-control" value="<?php echo $item->Ejerciente; ?>">
                </div>
            </div><div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Especialidad:</strong>
                    <input type="text" name="especialidad" class="form-control" value="<?php echo $item->Especialidad; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Ámbito de Trabajo:</strong>
                    <input type="text" name="ambitotrabajo" class="form-control" value="<?php echo $item->AmbitoTrabajo; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Sector de Trabajo:</strong>
                    <input type="text" name="sector" class="form-control" value="<?php echo $item->Sector; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Solicita Habilitación:</strong>
                    <input type="text" name="solicitahabilitacion" class="form-control" value="<?php echo $item->SolicitaHabilitacion; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Diplomado en Logopedia:</strong>
                    <input type="text" name="diplomaturalogopedia" class="form-control" value="<?php echo $item->DiplomaturaLogopedia; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Titulación:</strong>
                    <input type="text" name="titulacion" class="form-control" value="<?php echo $item->Titulacion; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Otras Titulaciones:</strong>
                    <input type="text" name="otrostitulos" class="form-control" value="<?php echo $item->OtrosTitulos; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Bolsa de Trabajo:</strong>
                    <input type="text" name="altabolsatrabajo" class="form-control" value="<?php echo $item->AltaBolsaTrabajo; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Traslado:</strong>
                    <input type="text" name="traslado" class="form-control" value="<?php echo $item->Trasladado; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Colegio de Origen:</strong>
                    <input type="text" name="colegioorigen" class="form-control" value="<?php echo $item->ColegioOrigen; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Nº Colegiado de Origen:</strong>
                    <input type="text" name="numcolegiado" class="form-control" value="<?php echo $item->NumColegiado; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Observaciones:</strong>
                    <input type="text" name="observaciones" class="form-control" value="<?php echo $item->Observaciones; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Publicidad:</strong>
                    <input type="text" name="publicidad" class="form-control" value="<?php echo $item->Publicidad; ?>">
                </div>
            </div>
            <div class="col-xs-12 col-sm-12 col-md-12">
                <div class="form-group">
                    <strong>Colegiado Actualmente:</strong>
                    <input type="text" name="activo" class="form-control" value="<?php echo $item->Activo; ?>">
                </div>
            </div>
            <div class="row">
                <div class="col-md-3">
                    <button type="submit" class="btn btn-primary btn-block btn-acceso text-uppercase">Modificar</button>
                </div>
            </div>

        <?php echo form_close(); ?>
    </div>
</section>

如果您看到任何我不喜欢的东西,请,请,请告诉我。谢谢。

【问题讨论】:

  • 您需要进行一些调试以确定哪里出了问题,因为您拥有从 html 到与数据库交互的代码的所有内容。例如,如果值从客户端正确传递到 php 代码,那么您可以从问题中删除客户端代码等。除非存在某种非常明显的语法 os 逻辑错误,否则很难仅在“它不起作用”的模糊陈述中发现大型代码库的错误!
  • 当您实际上没有传递任何规则时,所有这些set_rules() 调用的意义何在?另外,这里的“不工作”是什么意思?数据错误?白页?错误信息?你检查过错误日志吗?
  • 问题是我没有收到任何错误。数据库未更新,信息未修改。我真的相信问题与表格有关。
  • @M.Eriksson 这就是 codeigniter 的工作原理。我认为。所有的文件都这么说。如果您有更好的建议,请告诉我。
  • 如果您检查the documentation,则所有示例也都通过了验证规则(第三个参数),而您没有这样做。如果你想验证表单,那么你需要告诉 CI 如何它应该验证不同的输入。

标签: php codeigniter bootstrap-4 codeigniter-3


【解决方案1】:

不确定您的路线是什么样子,但也许这是您的问题:

你的控制器:controller/itemCRUD/edit

但是你的表单路径是:&lt;?php echo form_open('itemCRUD/update/' . $item-&gt;Id); ?&gt; with update

检查您是否使用正确的路线。

【讨论】:

  • 感谢@Canh 的建议,但它也不起作用。我会尽量减少表单中的项目数量,然后一次添加一个,直到找出问题所在。谢谢!
猜你喜欢
  • 2015-07-08
  • 1970-01-01
  • 2019-03-03
  • 1970-01-01
  • 2021-11-23
  • 2017-01-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多