目次
CodeIgniter 入门教程第一篇:信息发布,ci
这是我们的主页
'.$value['title'].'
ホームページ php教程 php手册 CodeIgniter 入门教程第一篇:信息发布,ci

CodeIgniter 入门教程第一篇:信息发布,ci

Jun 13, 2016 am 08:56 AM
bootstrap

CodeIgniter 入门教程第一篇:信息发布,ci

一、MVC

    CodeIgniter 采用MVC架构即:控制层、模型层和视图层。

    对应Application下面的文件夹   (图1):

    所有新建文件以.php结尾

    视图层 view 文件夹放入HTML模板

    模型层 model 存放对数据库操作的代码

    控制层 controllers 存放进行逻辑判断的代码,从模型层取得数据然后输入到视图层,发送给用户。

    图1

 

功能

1. 模板增加输入表单

2. 控制器增加接收表单数据的代码,并对用户输入进行简单校验。

3. 在表单上方输出标题和正文,以及发布时间。

用到的知识点:CI helper类(url) 和 输入类(input),

以及CI ActiveRecord 和向模板传值。

 

二、初始配置

    1. 链接数据库

    修改数据库配置:/application/config/database.php

  'hostname' => 'localhost',
    'username' => 'root',
    'password' => '',
    'database' => 'test',
    'dbdriver' => 'mysqli',
    'dbprefix' => 'ts_',
ログイン後にコピー

  

2. 修改默认路由

CI框架采用单文件入口的方式,默认必须通过index.php来访问控制层。比如controllers文件夹下有个名为test的class类,test有个叫home的function,

则访问URL为:http://www.example.com/index.php/test/home

三、输出页面

1. 直接输出HTML模板

新建两个文件分别位于controllers文件夹和views文件夹

Test.php

<?php

defined('BASEPATH') OR exit('No direct script access allowed');

class Test extends CI_Controller {

    public function home()

    {

        $this->load->view('home');

    }

}

home.php

<?php defined('BASEPATH') OR exit('No direct script access allowed'); ?>

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title>Home</title>

</head>

<body>

    <h1 id="这是我们的主页">这是我们的主页</h1>

</body>

</html>
ログイン後にコピー

  

在浏览器打开类似如下地址:http://test.com/index.php/test/home

2. 插入数据库条目

创建数据库表ts_news

Test.php

<?php

defined('BASEPATH') OR exit('No direct script access allowed');

class Test extends CI_Controller {

public function __construct()

{

parent::__construct();

$this->load->helper('url');

$this->load->model('news_model');

}

public function home()

{

$this->load->view('home');

}

public function add_news(){

$title = $this->input->get('title',TRUE);

$content = $this->input->get('content');

if ( (strlen($title) < 20 ) or (strlen($content) < 20 ) ){

echo '标题或正文内容过短';

return false;

}

$arr = array(

'id' => '',

'title' => $title,

'content' => $content,

'update_time' => time(),

'create_time' => time()

);

$check = $this->news_model->insert($arr,'news');

if ($check)

{

redirect('test/home');

}

else

{

echo '提交失败';

}

}

}

home.php

<?php defined('BASEPATH') OR exit('No direct script access allowed'); ?>

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<title>Home</title>

</head>

<body>

<h1 id="这是我们的主页">这是我们的主页</h1>

<hr>

<form action="<?php echo site_url('test/add_news'); ?>">

<label for="title">标题</label>

<input type="text" name="title" value="">

<br>

<label for="content">正文</label>

<textarea name="content" id="" cols="30" rows="10"></textarea>

<br>

<input type="submit" value="提交" >

</form>

</body>

</html>

News_model.php

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class News_model extends CI_Model {

public function __construct()

    {

        parent::__construct();

        $this->load->database();

    }

public function insert($arr,$table)

{

$this->db->insert($table, $arr);

        if ($this->db->affected_rows() > 0)

        {

            return $this->db->insert_id();

        }

        else

        {

            return FALSE;

        }

}

}

412ded80-4884-4a2f-ae37-6ba69cdc4278

493498ee-0f5c-4676-9cec-38e5a3f3e6fd

    3. 查询数据库并输出

    News_model.php增加

public function get_all($table)

    {

        $this->db->select('*');

        $query = $this->db->get($table);

        $query = $query->result_array();

        return $query;

    }

Test.php 的 home修改为:

public function home()

    {

        $news = $this->news_model->get_all('news');

        $data['news'] = $news;

        $this->load->view('home',$data);

    }
ログイン後にコピー

  Home模板的body修改为:

<body>

<h1 id="这是我们的主页">这是我们的主页</h1>

<?php 

foreach ($news as $key => $value) {

echo '<div>

<h3 id="value-title">'.$value['title'].'</h3>

<span>发布时间:'.date('Y-m-d H:i:s',$value['create_time']).'</span>

<p>'.$value['content'].'</p>

</div>';

}

?>

<hr>

<form action="<?php echo site_url('test/add_news'); ?>">

<label for="title">标题</label>

<input type="text" name="title" value="">

<br>

<label for="content">正文</label>

<textarea name="content" id="" cols="30" rows="10"></textarea>

<br>

<input type="submit" value="提交" >

</form>

</body>
ログイン後にコピー

  

  

刷新查看效果:

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Eclipseにブートストラップを導入する方法 Eclipseにブートストラップを導入する方法 Apr 05, 2024 am 02:30 AM

5 つのステップで Eclipse に Bootstrap を導入します。 Bootstrap ファイルをダウンロードして解凍します。 Bootstrap フォルダーをプロジェクトにインポートします。ブートストラップの依存関係を追加します。 Bootstrap CSS と JS を HTML ファイルにロードします。ブートストラップの使用を開始して、ユーザー インターフェイスを強化します。

アイデアをブートストラップに導入する方法 アイデアをブートストラップに導入する方法 Apr 05, 2024 am 02:33 AM

IntelliJ IDEA に Bootstrap を導入する手順: 新しいプロジェクトを作成し、「Web アプリケーション」を選択します。 「Bootstrap」Maven 依存関係を追加します。 HTML ファイルを作成し、ブートストラップ参照を追加します。 Bootstrap CSS ファイルへの実際のパスに置き換えます。 HTML ファイルを実行してブートストラップ スタイルを使用します。ヒント: CDN を使用して、ブートストラップをインポートしたり、HTML ファイル テンプレートをカスタマイズしたりできます。

ブートストラップメディエーション効果テスト結果をstataで読み取る方法 ブートストラップメディエーション効果テスト結果をstataで読み取る方法 Apr 05, 2024 am 01:48 AM

Stata でのブートストラップ媒介効果テストの解釈手順: 係数の符号を確認します: 媒介効果の正または負の方向を決定します。検定の p 値: 0.05 未満は、仲介効果が有意であることを示します。信頼区間を確認します。ゼロが含まれていない場合は、仲介効果が有意であることを示します。中央値の p 値を比較すると、0.05 未満であるため、仲介効果の重要性がさらに裏付けられます。

大型モデル間の1対1バトル75万ラウンド、GPT-4が優勝、Llama 3が5位にランクイン 大型モデル間の1対1バトル75万ラウンド、GPT-4が優勝、Llama 3が5位にランクイン Apr 23, 2024 pm 03:28 PM

Llama3 に関しては、新しいテスト結果が発表されました。大規模モデル評価コミュニティ LMSYS は、Llama3 が 5 位にランクされ、英語カテゴリでは GPT-4 と同率 1 位にランクされました。このリストは他のベンチマークとは異なり、モデル間の 1 対 1 の戦いに基づいており、ネットワーク全体の評価者が独自の提案とスコアを作成します。最終的に、Llama3 がリストの 5 位にランクされ、GPT-4 と Claude3 Super Cup Opus の 3 つの異なるバージョンが続きました。英国のシングルリストでは、Llama3 がクロードを追い抜き、GPT-4 と並びました。この結果について、Meta の主任科学者 LeCun 氏は非常に喜び、リツイートし、

ブートストラップメディエーションテストの結果の見方 ブートストラップメディエーションテストの結果の見方 Apr 05, 2024 am 03:30 AM

ブートストラップ メディエーション テストは、データを複数回リサンプリングすることによってメディエーション効果を評価します: 間接効果信頼区間: メディエーション効果の推定範囲を示します。間隔にゼロが含まれない場合、効果は有意です。 p 値: 信頼区間にゼロが含まれない確率を評価し、0.05 未満の値が有意であることを示します。サンプル サイズ: 分析に使用されるデータ サンプルの数。ブートストラップ サブサンプリング時間: 繰り返されるサンプリングの数 (500 ~ 2000 回)。信頼区間にゼロが含まれず、p 値が 0.05 未満の場合、媒介効果は有意であり、媒介変数が独立変数と従属変数の間の関係を説明していることを示します。

ブートストラップを使用してメディエーション効果をテストする方法 ブートストラップを使用してメディエーション効果をテストする方法 Apr 05, 2024 am 03:57 AM

ブートストラップ テストは、リサンプリング テクノロジーを使用して統計テストの信頼性を評価し、媒介効果の有意性を証明するために使用されます。まず、直接効果、間接効果、および媒介効果の信頼区間を計算します。次に、統計的テストの有意性を計算します。 Baron and Kenny または Sobel 法に従った仲介タイプ、重要性、そして最後に自然な間接効果の信頼区間を推定します。

ブートストラップとスプリングブートの違いは何ですか ブートストラップとスプリングブートの違いは何ですか Apr 05, 2024 am 04:00 AM

Bootstrap と Spring Boot の主な違いは次のとおりです。 Bootstrap は Web サイト スタイル用の軽量 CSS フレームワークであるのに対し、Spring Boot は Java Web アプリケーション開発用の強力なすぐに使用できるバックエンド フレームワークです。 Bootstrap は CSS と HTML に基づいていますが、Spring Boot は Java と Spring フレームワークに基づいています。 Bootstrap は Web サイトのルック アンド フィールの作成に重点を置いているのに対し、Spring Boot はバックエンド機能に重点を置いています。 Spring Boot を Bootstrap と統合して、完全に機能的で美しいものを作成できます。

ブートストラップ テスト メディエーション エフェクト stata コマンドの結果をエクスポートする方法 ブートストラップ テスト メディエーション エフェクト stata コマンドの結果をエクスポートする方法 Apr 05, 2024 am 03:39 AM

Stata でのブートストラップ メディエーション効果テストの結果をエクスポートします。 結果を保存します。 ブートストラップ ポスト 変数リストを作成します。 ローカル変数: coef se ci 結果をエクスポートします (CSV): 区切り文字付きの結果をエクスポートします。csv, varlist(`vars') カンマ nolabel を置き換えます

See all articles