gpt4 book ai didi

php - 如何使用 Codeigniter 构建动态网站

转载 作者:行者123 更新时间:2023-12-02 21:59:09 26 4
gpt4 key购买 nike

我有一些 php 经验,但我最近才开始学习 Codeigniter。我曾经有一个带有固定导航 Pane 和侧边栏的网站,但该网站的主要部分是根据 Get 变量动态加载的。基本上是这样的

include head.php
include navbar.php
include sidebar.php
include the page requested from the get variable (home, about, contact, etc.)
include footer.php

我喜欢这个,因为当用户从一个页面导航到另一个页面时,整个网站不必重新加载。

我不知道如何使用 Codeiginiter 做到这一点。我应该为每个页面使用一个 Controller 还是为每个页面使用一个具有功能的 Controller ?有谁知道有类似功能的好教程吗?我见过的所有教程都会为每个页面重新加载整个网站。

编辑:本质上我想做 this但使用 Codeigniter

最佳答案

因为看起来您想要相对静态的内容,但动态加载,您可以使用一个 Controller 和(也许) Controller 中的一个方法来完成。

要使用一种方法执行此操作,请在 welcome Controller 中执行此操作:

public page( $page_id ){
// views/header.php
$this->load->view( "header" );


if( $page_id = "about" ){
$this->load->view("about"); // views/about.php
}

else if( $page_id = "contact" ){
$this->load->view("contact"); // views/contact.php
}

// views/footer.php
$this->load->view("footer");
}

这需要一个 get 变量并确定要在页眉和页脚之间加载哪个页面。

这样www.yoursite.com/page/about将加载关于页面,www.yoursite.com/page/contact将加载联系人 页面

现在,如果你想去掉 /page 部分,你需要在 application/config/routes.php 中进行一些 URL 重新路由

或者,您可以在一个 Controller 中使用多种方法:

public about(  ){
// views/header.php
$this->load->view( "header" );

$this->load->view( "about" );

// views/footer.php
$this->load->view("footer");
}


public contact( ){
// views/header.php
$this->load->view( "header" );

$this->load->view( "contact" );

// views/footer.php
$this->load->view("footer");
}

现在,您的 URL 在没有路由的情况下看起来更好,但您必须为每个页面加载页眉/页脚。

关于php - 如何使用 Codeigniter 构建动态网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17227605/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com