为了账号安全,请及时绑定邮箱和手机立即绑定

通过 Codeigniter Ajax 在视图中显示数据时未定义的变量

通过 Codeigniter Ajax 在视图中显示数据时未定义的变量

PHP
慕标琳琳 2021-08-27 09:59:13
我试图通过 ajax 从控制器发送数据以在 Codeigniter 中查看,但我不断收到此错误:遇到 PHP 错误严重性:通知消息:未定义变量:usuario 文件名:views/buscar_view.php 行号:92这是我通过 Ajax 将数据发送到控制器的视图,它也显示了整个过程之后的信息//buscar_view:<?php    $diva="<div id='tabla6' align=center>";    $divc="</div>";    $salto_linea="<br><br>";    echo $diva;    echo form_label('Ingrese su Cedula:').$salto_linea;    echo form_input(array('type'=>'text', 'name'=>'cedula','required'=>'true','id' => 'ccedula')).$salto_linea;    echo form_submit(array('value'=>'Buscar','id' =>'enviarcedula'));    echo form_close();    echo $divc;    ?>//Ajax request        $(document).ready(function(){            $("#enviarcedula").click(function(){                var cedula=$("#ccedula").val();                peticionUsuario(cedula);            });        });        function peticionUsuario(cedulajs)        {            var parametros={                "cedula":cedulajs            }            $.ajax({                data:parametros,                type:"post",                url:'<?php echo base_url();?>usuario_controller/recibePeticionUsuarioAjax',                success: function(respuesta){                    alert("Informacion  de usuario");            }            });        }//Displaying data in the view<?php    foreach ($usuario as $u) {    //forma nueva        echo   "<tr>        <td>{$u->cedula}</td>        <td>{$u->nombre}</td>        <td>{$u->apellido}</td>        <td>{$u->direccion}</td>        <td>{$u->telefono}</td>        </tr>" ;        }    echo '</table>';    echo '</div>';     ?>我怎样才能解决这个问题?我已经尝试了很多,但没有任何改变
查看完整描述

2 回答

?
森林海

TA贡献2011条经验 获得超2个赞

它不起作用,因为在您的模型中您不返回查询结果。用这个:


public function buscarUsuario($cedula)

{

      $query=$this->db->get_where('usuario',$cedula);

      return ($query->num_rows()) ?$query->result():false; // returns false, if query has no results

}

并将控制器更改为这些行


$data['usuario']=$this->usuario_model->buscarUsuario($cedula);

$this->load->view("buscar_view" , $data);

在你看来是这样的:


if($usuario==false){echo 'no records found'; }

else{

  foreach ($usuario as $u) {

    //forma nueva

    // your code

  }   

}


查看完整回答
反对 回复 2021-08-27
?
慕容708150

TA贡献1831条经验 获得超4个赞

在您的控制器中更改此设置


 if($this->input->post())

            {

                $cedula=$this->input->post('cedula');

                $usuario=$this->usuario_model->buscarUsuario($cedula);

                $this->load->view("buscar_view" ,array ('usuario'=>$usario);


            }


查看完整回答
反对 回复 2021-08-27
  • 2 回答
  • 0 关注
  • 137 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信