Php 如何从数据库中检索数据并在codeigniter中显示
我的代码如下所示,但当它运行时,它总是给出一个错误 消息:未定义变量:结果为什么会出现错误?我无法理解,有人能给我一个解决方案吗 myads_model.phpPhp 如何从数据库中检索数据并在codeigniter中显示,php,codeigniter,Php,Codeigniter,我的代码如下所示,但当它运行时,它总是给出一个错误 消息:未定义变量:结果为什么会出现错误?我无法理解,有人能给我一个解决方案吗 myads_model.php <?php class Myads_model extends CI_Model { public function __construct() { $this->load->database(); } public functio
<?php
class Myads_model extends CI_Model
{
public function __construct()
{
$this->load->database();
}
public function getmyads( $SESSION['$email'] )
{
$this->db->select('Vehicleid,Image1,Brand,Model,Modelyear,
VehicleCondition,Mileage,BodyType,Transmission,
Fueltype,EngineCapacity,Price,Negotiable,
Description,Phone,Email');
//$this->db->from('vehicle');
$this->db->where('Email',$SESSION['$email']);
$query=$this->db->get('vehicle');
return $result=$query->result();
}
}
?>
myads_ctrl.php
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
/**
*
*/
class Myads_ctrl extends CI_Controller
{
public function __construct()
{
parent::__construct();
$this->load->database();
}
public function index()
{
$data=array();
$this->load->model('myads_model');
$this->data['result']=$this->myads_model->getmyads($_SESSION['email']);
$this->load->view('pages/templates/header');
$this->load->view('pages/myads_view', $this->data);
$this->load->view('pages/templates/footer');
}
}
?>
myads_view.php
我的广告
品牌:
型号:
车型年款:
条件:
里程:公里
传输:
燃料类型:
卢比。
在您的模型中,不要将参数命名为$SESSION['$email']
,而应命名为$email
。并将模型中的select语句更改为:
public function getmyads( $email )
{
$this->db->select('your fields here');
$this->db->from('vehicle');
$this->db->where('Email', $email);
$query = $this->db->get();
$result = $query->result();
return $result->num_rows() > 0 ? $result->result_array() : false;
}
在控制器中:
$this->data['result']=$this->myads_model->getmyads($_SESSION['email']);
$this->load->view('pages/templates/header');
$this->load->view('pages/myads_view', $this->data);
$this->load->view('pages/templates/footer');
在您看来,您应该能够访问您的结果,如:
var_dump($result);
var_dump($result)的用途是什么?$result的var_dump将显示从模型返回的内容,无论是false还是results。这与使用foreach循环迭代每个键、值对相同。如果您是对的,var_dump仅用于调试目的。这只是为了清楚地显示结果是否正确(错误)。若数组为空或不存在,那个么遍历该数组就并没有意义。您的问题是“未定义的变量:结果为什么会出现错误?我无法理解”,因此var_dump将显示您的数据库是否返回任何结果。好的,我会按照您的建议进行操作,但仍然没有解决。我能知道这行是什么意思$result->num_rows()>0吗$结果->结果数组():false;模型中
var_dump($result);