从数据库中获取页面标题
遇到了一个PHP错误严重性:注意消息:试图获取非对象Filename: controllers/DigitedBusinessting.php行号: 20的属性 遇到了PHP错误严重性:注意消息:试图获取非对象Filename的属性:controllers/digital_businessting.php行号: 21
我有两个像1.digital_marketing 2这样的表
在第一个表中,我将与digitalmarketing_name一起插入与数字营销相关的数据(该表将采用以下格式)
digital_id description digitalmarketing_name
1 dfhbsdjbfd digital_marketing第二表:(页名)
pagetitle_id page_title title
1 digital_marketing Digital Marketing在这里,我比较page_title,如果两个page_titles匹配,那么我需要显示标题名称,但在比较时,得到一个错误,我已经张贴在上面。
如果我在页面标题中使用下划线(_),它将得到该错误,如果没有,它将正常工作。
主计长:
class Digital_marketing extends CI_Controller {
function __construct()
{
parent::__construct();
$this->load->model('index_model');
$this->load->model('digitalmarketing_model');
}
public function index()
{
$data['records2']=$this->digitalmarketing_model->get_digitalmarketing();
$pageReult = $this->digitalmarketing_model->getpagetitle($this->uri->segment(1));
$data['page_title']=$pageReult->title;
$data['meta_tags']=$pageReult->meta_tags;
$data['mainpage'] = "digital-marketing";
$this->load->view('templates/template',$data);
}型号:
function getpagetitle($id)
{
$this->db->select('P.*,D.digitalmarketing_name');
$this->db->from('pagetitle AS P');
$this->db->join('digital_marketing AS D','D.digitalmarketing_name=P.page_title','INNER');
$this->db->where(array('P.page_title'=>$id));
$q=$this->db->get();
//var_dump($this->db->last_query());
//print_r($q->num_rows());
if($q->num_rows()>0)
{
$output = $q->result();
return $output[0];
}
else
{
return false;
}
}我在digital_marketing表中插入的页面标题,它是我的控制器名。
发布于 2017-09-21 08:04:59
你可以改变你的模态函数
Controller.php
public function index()
{
$data['records2']=$this->digitalmarketing_model->get_digitalmarketing();
#echo $this->uri->segment(1); exit;
$pageReult = $this->digitalmarketing_model->getpagetitle($this->uri->segment(1));
$data['page_title']=$pageReult->title;
$data['meta_tags']=$pageReult->meta_tags;
$data['mainpage'] = "digital-marketing";
$this->load->view('templates/template',$data);
}模态: digitalmarketing_model.php
function getpagetitle($id) {
$this->db->select('p.*,d.digitalmarketing_name');
$this->db->from('digital_marketing AS d');
$this->db->join('pagetitle as p', 'p.page_title = d.digitalmarketing_name', 'left');
$this->db->where('p.page_title',$id);
$query = $this->db->get();
if ($query->num_rows() > 0) {
$row = $query->row();
return $row;
} else {
return false;
}
}希望这能帮到你。
https://stackoverflow.com/questions/46337173
复制相似问题