将$data的值从控制器发送到标头,但是当页面更改为包含标头的另一个页面时,它会显示错误。
看看下面的代码
控制器
`$user_email=$_GET['email'];
$this->load->model('Pmodel');
$data['email']=$this->Pmodel->profile_model($user_email);
$this->load->view('dashboard/profile',$data);`
现在标题"视图">
<?php foreach ($data as $key ):?>
<?php
$uname=$key['uname'];
$user_email=$key['email'];
?>
<li>
<?php echo anchor('user/profile_user/?email='.$user_email, $uname ); ?></li>
<?php endforeach; ?>
但是当页面从仪表板更改为配置文件时,它会显示错误遇到 PHP 错误
严重性:通知
消息:未定义的变量:数据
文件名:仪表板/标头.php
行号:58
遇到 PHP 错误
严重性:警告
消息:为 foreach(( 提供的参数无效
文件名:仪表板/标头.php
行号:58
您可以直接访问密钥,无需循环。
喜欢:
<?php
$uname=$uname;
$user_email=$email;
?>
<li>
<?php
echo anchor('user/profile_user/?email='.$user_email, $uname;
?>
</li>
试试这个方法。
在视图中使用此代码
<?php foreach ($data as $key ):?>
<?php
$uname=$key['uname'];
$user_email=$key['email'];
?>
<li>
<?php echo anchor('user/profile_user/'.$user_email, $uname ); ?></li>
<?php endforeach; ?>
您的控制器使用此代码
public function profile_user($user_email)
{
$data =array();
$this->load->model('Pmodel');
$data['email']=$this->Pmodel->profile_model($user_email);
$this->load->view('dashboard/profile',$data);`
}
您
从控制器发送$data['电子邮件'],这意味着您发送$email
查看而不是$data
试试这个:
foreach ($email as $key )
你需要
传递数据
$data['email']=$this->Pmodel->profile_model($user_email);
在每个控制器和方法中.