我无法通过选择将mysql数据加载到视图中,请帮我查找错误。谢谢。
查看
<div class="grid">
<div class="row">
<?php $this->load->view('admin/admin_topmenu.php'); ?>
</div>
<div class="row">
<div class="span10 box" style="padding: 10px;">
<p>Recent Messages</p>
<table class="table hovered">
<thead>
<tr class="selected">
<th class="text-left">Name</th>
<th class="text-left">Email</th>
<th class="text-left">Phone</th>
<th class="text-left">Message</th>
</tr>
</thead>
<tbody>
<?php echo form_open('admin_forms/inbox') ?><!-- start of the form -->
<?php if(isset($records)) : foreach($records as $row) : ?>
<tr>
<td class="right"><?php echo $row->contactus_name; ?></td>
<td class="right"><?php echo $row->contactus_email; ?></td>
<td class="right"><?php echo $row->contactus_phone; ?></td>
<td class="right tertiary-text-secondary text-justify"><?php echo $row->contactus_comment; ?></td>
</tr>
<?php endforeach; ?>
<?php endif; ?>
<?php echo form_close(); ?><!-- END of the form -->
</tbody>
<tfoot></tfoot>
</table>
</div>
<div class="span3">
<nav class="sidebar light">
<ul>
<li>
<a href="#">
<i class="icon-home"></i>
Inbox <strong>(5)</strong>
</a>
</li>
<li>
<a href="#">
<i class="icon-home"></i>
Send
</a>
</li>
<li>
<a href="#">
<i class="icon-home"></i>
Newsletter/Ad
</a>
</li>
</ul>
</nav>
</div>
</div>
控制器
<?php class Admin extends CI_Controller {
function index()
{
}
function inbox()
{
$data = array();
if($query = $this->mod_contactus->get_records())
{
$data['records'] = $query;
}
$this->load->view('admin/admin_messages',$data);
}
}
模型
<?php
class Mod_contactus extends CI_Model
{
function get_records()
{
$query = $this->db->get('tbl_contactus');
return $query->result();
}
function add_record($data)
{
$this->db->insert('tbl_contactus', $data);
return;
}
function update_record()
{
}
}
当我转到页面的源代码时,单击表单发布方法,它会给我404 Page Not Found错误。
答案 0 :(得分:0)
我假设您能够访问该页面,并且您在表单提交时收到错误。除非您在application/config/routes.php
文件中设置了特殊路线,否则我相信您可以在视图中更改此行
<?php echo form_open('admin_forms/inbox') ?><!-- start of the form -->
到
<?php echo form_open('admin/inbox') ?><!-- start of the form -->
会做到这一点。
我之所以这样说是因为您的控制器名称为Admin
,并且为了调用它(默认情况下),您必须在网址中使用admin
而不是admin_forms
答案 1 :(得分:0)
您需要获取结果
所以这一行:
实际上,您的变量$records
是资源,而不是结果集。
<?php if(isset($records)) : foreach($records as $row) : ?>
因此,请使用此资源,然后获取记录。
应该成为:
<击> <?php if(isset($records)) : foreach($records->result as $row) : ?>
击>
<?php if(isset($records)) : foreach($records->result() as $row) : ?>