CakePHP1.2 の ajax->link() を試してみた。 

まずはjsファイルを配置

以下の場所に必要なJavascriptライブラリを置く 

置く場所: app/webroot/js/ 

必要なファイルはCakePHP + ajax sliderを参照。 

コントローラを作成

以下のようなコントローラを新規作成する 

[app/controllers/test_controller.php] 

<?php
class TestController extends AppController {

	var $name = 'Test';
	var $uses = array();
	var $helpers = array('Html', 'Form', 'Ajax', 'Javascript');
	var $components = array( 'RequestHandler' );

	function index() {
	}

	function view() {
	}
}
?>

layoutに追加

layoutにjsライブラリの読み込みを追記。
# もし、 “app/views/layouts/default.ctp”が無ければ作成する。
# そして、必ず<head>と</head>の間に記述する。
[app/views/layouts/default.ctp]

	<?php
		if (!empty($javascript)) {
			$files = array('prototype', 'scriptaculous');
			echo $javascript->link($files);
		}
	?>

Viewを作成

 
viewを2個作成する。
[app/views/test/index.ctp]

<h1>ajax->list() Test</h1>

<?php
	echo date("Y/m/d g:i:s");
?>
<hr>
<div id="post">
</div>
<?php echo $ajax->link(
	'View Post',
	array('action' => 'view'),
	array('update' => 'post')
);
?>

[app/views/test/view.ctp]

<?php
	echo date("Y/m/d g:i:s");
?>

ブラウザで表示する

ブラウザで表示して確認する。
http://localhost/test/
# “localhost”の部分は適切に読み替えて!
“View Post”というリンクをクリックすると、その上に現在時刻が出てくる。
上の段に表示されているのはページ全体が読み込まれた時の時間。
下の段に表示されるのは、その部分だけ再表示した時間。