[PHP] CodeIgniter + XAjax

  • このエントリーをはてなブックマークに追加
  • Pocket

attention この記事は2年以上前の投稿になります。
記載された情報が古くなっている可能性がございますので十分ご注意ください。

最新版のCodeIgniter から XAjax を利用してみます。
環境は以下の通りです。
CodeIgniter 2.01
XAjax 0.5 standard

コントローラのコンストラクタに以下の記述

		require_once(APPPATH.'libraries/xajax_core/xajax.inc'.EXT);
		$this->xajax = new xajax();
		$this->xajax->register(XAJAX_FUNCTION,array(&$this, "test_func")); <strong>※ここの記述がポイント</strong>
		$this->xajax->processRequest();
		$this->xajax->configure('debug', true);

コントローラにXAjax用の関数を以下のように追記

	public function test_func($text)
	{
		$objResponse = new xajaxResponse();
		$objResponse->assign('div1', 'innerHTML', $text);
		return $objResponse;
	}

ビュー内に以下の関係するコードを追加

<?php $this->xajax->printJavaScript("./"); ?>
<button onclick='xajax_test_func("こんにちは");' >Click Me</button>
<div id="div1">&#160;</div>

「※ここの記述がポイント」の説明
XAjaxのバージョンによって、「register」と「registerFunction」(旧書式)があるが推奨は「register」を使いましょう。
コントローラ内でXAjax用の関数は「$this->test_func」のように呼び出す。
そのため、「array(&$this, “test_func”)」に記述している。
もし、仮にビュー内にXAjax用の関数を記述していれば、直接「”test_func”」で呼び出すことができるのだから、「register(XAJAX_FUNCTION, “test_func”)」このようになる。

WordPress対応 PHPファイル 難読化ツール

ご訪問ありがとうございます。
参考になりましたら『いいね!』もお願いします。

ITの活用情報を毎週お届けする無料メルマガに是非ご登録ください。

閉じる

ご意見・ご感想をお待ちしております。

いただいた情報は一般公開されません。(入力いただいたメールアドレスにてご返信させていただきます)
また、* が付いている欄は必須項目となりますので、必ずご記入をお願いします。

内容に問題なければ、下記の「コメントを送信する」ボタンを押してください。