ソース掲示板




すべてから検索

キーワード   条件 表示 現行ログ 過去ログ トピックス 名前 本文

  メンテナンス 前画面に戻る

対象スレッド 件名: MVC モデルに沿ってソースコードを分割する
名前: lightbox
処理選択
パスワード

件名 MVC モデルに沿ってソースコードを分割する
名前 lightbox
コメント
@DIV
http://e-words.jp/w/MVC.html(MVC) は、MODEL、VIEW、CONTROL を意味する WEB アプリケーションを作成する
時の基本的な考え方です。

http://www.php.net/manual/ja/language.variables.scope.php(global) は、ブロック内で最も上位で定義された変数を参照する方法です。
@C:red(他の言語では、何もしなければグローバルを参照しますが、
PHP では、ローカルを参照するので注意が必要です)
@END

[[control.php]]
@DIV
<?
# **********************************************************
# 初期処理
# **********************************************************
header( "Content-Type: text/html; Charset=EUC-JP" );
header( "Expires: Wed, 31 May 2000 14:59:58 GMT" );

require_once( "model.php");
require_once( "http://lightbox.in.coocan.jp/gen/db.txt");
$conf_db_type = 1;
$SQL = new DB( "サーバー","DB","ユーザー","パスワード" );
$SQL->Debug = true;

# **********************************************************
# 主処理
# **********************************************************
counter_action();

if ( $_GET['send'] == "送信" ) {
	counter_update();
}

# **********************************************************
# 画面定義
# **********************************************************
require_once( "view.php");

$SQL->Close();
?>
@END

[[model.php]]
@DIV
<?

# **********************************************************
# アクセスカウンタの表示データの取得処理
# **********************************************************
function counter_action() {

	@C:red(global) $SQL,$OUT_DATA;

	$Query = "update acounter set PAGE_COUNT = PAGE_COUNT + 1";
	$Query .= " where PAGE_NAME = 'NEW_PAGE'";
	$SQL->Execute( $Query );
	$ret = mysql_affected_rows( $SQL->Connect );
	if ( $ret == 0 ) {
		$Query = "insert into acounter (PAGE_NAME,PAGE_COUNT)";
		$Query .= " values('NEW_PAGE',1)";
		$SQL->Execute( $Query );
	}
	
	$Query = "select * from acounter";
	$Query .= " where PAGE_NAME = 'NEW_PAGE'";
	
	$Column = $SQL->QueryEx( $Query );
	
	$OUT_DATA = $Column["PAGE_COUNT"];

}

# **********************************************************
# アクセスカウンタの表示データの更新処理
# **********************************************************
function counter_update() {

	@C:red(global) $SQL;

	$Query = "update acounter set PAGE_COUNT = {$_GET["counter"]}";
	$Query .= " where PAGE_NAME = 'NEW_PAGE'";
	$SQL->Execute( $Query );

}

?>
@END

http://lightbox.matrix.jp/ginpro/patio.cgi?mode=view2&f=238&no=5&type=ref&opt=text-align:left;margin-left:20px;&xml=y(view.php)