【问题标题】:Codeigniter: passing data from view to controllerCodeigniter:将数据从视图传递到控制器
【发布时间】:2015-02-03 02:25:57
【问题描述】:

这是我的视图代码:

<p align="center"; style="font-size:22px">Database books</p>
        <table>
      <tr>
        <th>Book ID</th>
        <th>Book Name</th>
        <th>Description</th>
        <th>Author</th>
        <th>Publisher</th>
        <th>Pages</th>
        <th>Publication Date</th>
        <th>Price</th>
        <th>Status</th>
        <th>Quantity</th>
        <th>Genres</th>
        <th>User Rating</th>
        <th>Reviews</th>
        <th>Edit</th>
      </tr>
      <?php foreach($books as $book) { ?>
      <tr>
        <td><?php echo $book->book_id ?></td>
        <td><?php echo $book->book_name ?></td>
        <td><?php echo $book->description ?></td>
        <td><?php echo $book->author ?></td>
        <td><?php echo $book->publisher ?></td>
        <td><?php echo $book->pages ?></td>
        <td><?php echo $book->publication_date ?></td>
        <td><?php echo $book->price ?></td>
        <td><?php echo $book->status ?></td>
        <td><?php echo $book->quantity ?></td>
        <td><?php echo $book->genres ?></td>
        <td><?php echo $book->user_rating ?></td>
        <td><?php echo $book->reviews ?></td>
        <td><a href="<?php echo base_url(); ?>admin/edit_data">Edit</a></td>
      </tr>
      <?php } ?>
    </table>

我想知道如何将数据从视图传递到控制器,因为我想将信息传递到我的编辑页面。我正在尝试使用锚标记搜索传递变量,但是我正在获取有关使用 GET 和 POST 的信息,还有其他方法吗?

【问题讨论】:

  • 为什么不想使用 GET 和 POST?
  • 我猜 POST 很好,但我想有没有更好的方法来做它
  • 这种编辑的设计方式是只需要设置一个id就可以编辑链接,e.g.比如 admin/edit_data/1 其中 1 是 id,然后在编辑页面中再次查询 id=1 的记录,然后在字段中显示值。
  • 所以我会将 id 从一个视图传递到另一个视图直接跳过控制器?
  • 不,您将 id 传递给控制器​​中的 edit_data 函数,从数据库中获取记录,然后返回到您的 edit_data 视图。 mvc中的view只用于显示记录,后面的所有逻辑都应该在controller层

标签: php codeigniter


【解决方案1】:

将href链接改为

href="<?php echo base_url(); ?>admin/edit_data/<?php echo $book->book_id ?>"

然后你就可以在你的控制器功能编辑数据上获取书籍id

function edit_data($bookid) {

    //you can use $bookid to fetch data from db

}

【讨论】:

  • 感谢所有帮助的人! :)
【解决方案2】:

上面的href链接是对的。

href="<?php echo base_url(); ?>admin/edit_data/<?php echo $book->book_id ?>"

只需在function edit_data() {// do stuff here} 中添加$bookid = $this-&gt;uri-&gt;segment(3); 即可从href 链接中检索图书ID。

function edit_data() {
   $bookid = $this->uri->segment(3);
    //retrieving book id
}

【讨论】:

    猜你喜欢
    • 2011-09-09
    • 1970-01-01
    • 2016-05-30
    • 1970-01-01
    • 2014-12-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多