五指山大王 发表于 2017-7-21 19:34:24

做的CI留言板功能,但是参数传递出现错误,求解

这是view层,位于views/leaveword/index.php

<?php
defined('BASEPATH') OR exit('No direct script access allowed');
?><!DOCTYPE html>
<html lang="en">
    <head>
      <title>leave word</title>
      <meta charset="utf-8">
      <h3>留言板</h3>
    </head>

    <body>
      <div id="title" style="height: 10px; weight: 100px"></div>
      <div id="show" style="height: 200px; weight: 100px">
            <?php foreach ($leavewords as $leaveword_lists): ?>
                <h5><?php echo $leaveword_lists['utitle']; ?></h5>
                <h6><?php echo $leaveword_lists['ucontent']; ?></h6>
                <h6><?php echo $leaveword_lists['uname']; ?></h6>
            <?php endforeach; ?>
      </div>

      <div id="put in" style="height: 100px; weight: 100px">
            <h4>请留言</h4>
            <br />
            <?php echo validation_error(); ?>
            <?php echo form_open('leaveword/home/put'); ?>

                <div id="utitle" style="height: 10px; weight: 80px">
                <label for="utitle">留言标题:</label>
                <input type="input" name="utitle" /><br />
                </div>
               
                <div id="ucontent" style="height: 50px; weight: 80px">
                <label for="ucontent">留言内容</label>
                <textarea name="ucontent"></textarea><br />
                </div>

                <div id="uname" style="height: 10px; weight: 80px">
                <label for="uname">用户名:</label>
                <input type="input" name="uname" /><br />
                </div>
               
                <input type="submit" name="submit" value="发表留言">
            </form>

      </div>
      
    </body>
</html>


这是controller层,位于controller/leaveword/home.php

<?php

class Home extends CI_Controller
{
    // 构造函数
    public function __construct()
    {
      parent::__construct();
      $this->load->view('leaveword/index');
      $this->load->model('leaveword');
    }


    // 显示留言方法
    public function show()
    {
      
      $data['leavewords'] = $this->leaveword->retrieve();
      
      $this->load->view('leaveword/index', $data);


      if (empty($data['leaveword']))
      {
            echo '暂时还没有人留言';
      }


    }

    // 用户发表留言方法
    public function put()
    {
      $this->load->helper('form');
      $this->load->library('form_validaton');

      $this->form_validation->set_rules('utitle', 'Utitle', 'required');
      $this->form_validation->set_rules('ucontent', 'Ucontent', 'required');
      $this->form_validation->set_rules('uname', 'Uname', 'required');

      if ($this->form_validation->run() == FALSE)
      {
            echo '留言失败,请重新输入。';
            $this->load->view('leaveword/index');
      }
      else{
            echo '留言成功';
            $this->leaveword->create();
      }

    }
   
}


这是model层,位于model/leaveword.php

<?php
class Leaveword extends CI_Model
{
    public function __construct()
    {
      parent::__construct();
      $this->load->database();
    }

    // 读取留言方法
    public function retrieve()
    {
       $query = $this->db->get('leaveword');
       return $query->result_array();
    }

    // 存储留言方法
    public function create()
    {
      // 赋值给data数组,post()可以对数据进行过滤
      $data = array(
            'utitle' => $this->input->post('utitle'),
            'ucontent' => $this->input->post('ucontent'),
            'uname' => $this->input->post('uname')
      );

      return $this->db->insert('leaveword', $data);
    }
}


数据库就用户名、留言标题和留言内容,三个。求大神帮我看看,小白实在没法子啦

Hex 发表于 2017-7-22 02:08:57

具体是什么错误?

五指山大王 发表于 2017-7-22 08:17:43

本帖最后由 五指山大王 于 2017-7-22 08:32 编辑

Hex 发表于 2017-7-22 02:08
具体是什么错误?
Message: Undefined variable: leavewordsFilename: leaveword/index.php

五指山大王 发表于 2017-7-22 08:25:12

本帖最后由 五指山大王 于 2017-7-22 08:32 编辑

Hex 发表于 2017-7-22 02:08
具体是什么错误?
数据能存进数据库,但是显示就出问题了

dayrui 发表于 2017-7-22 10:14:10

变量未定义
<?php if (isset($leavewords)) { foreach ($leavewords as $leaveword_lists): ?>
   <h5><?php echo $leaveword_lists['utitle']; ?></h5>
                <h6><?php echo $leaveword_lists['ucontent']; ?></h6>
                <h6><?php echo $leaveword_lists['uname']; ?></h6>
            <?php endforeach;} ?>
页: [1]
查看完整版本: 做的CI留言板功能,但是参数传递出现错误,求解