我通过CodeIgniter
表单在表中添加用户。Insertion
运行正常。但删除选定的记录后,我得到未定义的变量结果。我还定义了
$results = NULL;
控制器代码中的。我的代码发生了什么?
控制器代码
$results = NULL;
$this->load->model('User');
$form_data['results'] = $this->User->view_table();
$this->load->view('User/User_login', $form_data);
查看user_login.php中的代码
<?php
if(sizeof($results)>0){
foreach ($results as $row){
echo "<tr style='text-align:center';>";
echo "<td>".$id=$row->id."</td>";
echo "<td>".$row->first_name."</td>";
echo "<td>".$row->last_name."</td>";
echo "<td>".$row->username."</td>";
echo "<td>".$row->email."</td>";
echo "<td><a href = ".base_url().'Users/user_edit'.">Edit</a>|<a href=".base_url().'Users/user_delete/'.$id=$row->id.">Delete</a></td>";
// echo $id; die();
echo "</tr>";
}
}else{
echo "no record found";
}
?>
误差A PHP Error was encountered
Severity: Notice
Message: Undefined variable: results
Filename: User/User_login.php
Line Number: 44
使用isset
来检查变量是否被定义
<?php
if(isset($results)){
foreach ($results as $row){
echo "<tr style='text-align:center';>";
echo "<td>".$id=$row->id."</td>";
echo "<td>".$row->first_name."</td>";
echo "<td>".$row->last_name."</td>";
echo "<td>".$row->username."</td>";
echo "<td>".$row->email."</td>";
echo "<td><a href = ".base_url().'Users/user_edit'.">Edit</a>|<a href=".base_url().'Users/user_delete/'.$id=$row->id.">Delete</a></td>";
// echo $id; die();
echo "</tr>";
}
}else{
echo "no record found";
}
?>
收取
您已将其设置为null,但尚未将其传递给已传递的视图的$results
$form_data
到view一般来说,codeigniter
将传递给view的所有keys
转换为变量,因此你会看到未定义的消息,因为你的$this->User->view_table();
没有返回任何内容,它被分配给$form_data['results']
我猜$this->User->view_table()
函数有时返回NULL
。查一下。