2011年02月05日

RadPHP:NotifyBarを任意のタイミングで表示

ツールパレットのjQueryタブにあるNotifyBar(JBarのラッパー)は、デザイン時にMessageプロパティに表示する文字を入れ、Controlプロパティにフォーム上のボタンを指定すると、実行時そのボタンが押されたときに表示されるが、任意のタイミングで表示する場合は以下の関数を実行する。

コンポーネント名_execute(message,position,closebutton,duration,backgroundcolor,color);
※ パラメータは全て省略可能。省略した場合はデザイン時に指定したプロパティの値が使用される。

ex.)背景色ピンク、文字色青で「やっほ〜」を表示
NotifyBar1_execute("やっほ〜", "", "", "", "pink", "blue");
posted by 忘却の達人 at 13:04| Comment(0) | TrackBack(0) | RadPHP | このブログの読者になる | 更新情報をチェックする

2011年01月25日

RadPHP:DBGridを使用したページがエラーで表示されない

DBGridを使用したページで、ローカルでは正常に表示されてたのに、レンタルサーバーにアップすると、以下のエラーが表示されるだけで、コントロールが全て表示されなかった。(RadPHP XEトライアル版)
PHP Notice: Undefined property: ADORecordSet_mysql::$Fields in 〜\rpcl\dbtables.inc.php on line 624

E_NOTICEエラーを出力しないよう、ソースの最初に以下の1行を追加したら、正常に表示された。
error_reporting(E_ALL ^ E_NOTICE);
posted by 忘却の達人 at 00:09| Comment(0) | TrackBack(0) | RadPHP | このブログの読者になる | 更新情報をチェックする

2011年01月20日

RadPHP:PearDataGridでの表示

PearDataGridでの表示。(RadPHPトライアル版、DB:MySQL、charset:utf8)
まずDSNプロパティを以下のように設定。
mysqli://ユーザーID:パスワード@サーバー/データベース
文字化けを起こしたので文字コードを指定。
mysqli://ユーザーID:パスワード@サーバー/データベース?charset=utf8

すると今度は実行時エラー…原因は"rpcl/PEAR/MDB2/Driver/mysqli.php"の506行目で"mysql_real_escape_string"を使用していたため。これを"mysqli_real_escape_string"に変更したら正常に表示された。
あとDSNのphptypeを"mysql"に変えてもOK。
posted by 忘却の達人 at 22:37| Comment(0) | TrackBack(0) | RadPHP | このブログの読者になる | 更新情報をチェックする

2011年01月18日

RadPHP:ZAuthDBのPasswordFunctionプロパティ

ZAuthDBのPasswordFunctionプロパティは、パスワードを判定する式(関数)を指定する。
SQLのwhere句で、パスワード=〜この部分〜を設定するイメージ。
例えばテーブルのパスワードをMD5でハッシュ化している場合は、"MD5(?)"と設定する。
更に"MD5(?) and active_flg='1'"などと、他の条件式を付け加えることもできる。
posted by 忘却の達人 at 23:47| Comment(0) | TrackBack(0) | RadPHP | このブログの読者になる | 更新情報をチェックする

RadPHP:ZAuthコンポーネントで実行時エラー

ZAuthコンポーネントを使用すると、以下のZendユニットを使用するが、これらを"forms.inc.php"の前に記述しないと実行時エラーとなる。

use_unit("Zend/zauthdb.inc.php"); //または"Zend/zauthdigest.inc.php"
use_unit("Zend/zauth.inc.php");
use_unit("forms.inc.php"); //この前に記述

実行時エラー:
session has already been started by session.auto-start or session_start()
posted by 忘却の達人 at 23:17| Comment(0) | TrackBack(0) | RadPHP | このブログの読者になる | 更新情報をチェックする

2011年01月16日

RadPHP:SQLの発行

RadPHPでSQLを発行する場合、戻り値を返すSQLはQueryコンポーネントを使い、戻り値を返さないSQLはDatabaseコンポーネントのexecuteメソッドを使った方が楽。(戻り値を返さないSQLでQueryコンポーネントを使用する場合は、LimitStart&LimitCountプロパティをともに-1にする。)
posted by 忘却の達人 at 11:25| Comment(0) | TrackBack(0) | RadPHP | このブログの読者になる | 更新情報をチェックする

2010年12月29日

php:(はしご高)やア(立つ崎)を文字化けさせない文字コードの指定

phpで(はしご高)やア(立つ崎)が文字化けしないようにするには、文字コードの指定を以下のようにする。
SJIS -> SJIS-win
EUCJP -> eucJP-win
ISO-2022-JP -> ISO-2022-JP-MS
posted by 忘却の達人 at 09:22| Comment(0) | TrackBack(0) | php | このブログの読者になる | 更新情報をチェックする

2010年11月20日

jQuery:UI datepickerの週末に色をつける

jQuery UI datepickerの日付に任意の色をつけるには、beforeShowイベントとonChangeMonthYearイベントで、日付の文字色を変更する。※イベントが発生した時点で色付けしようとしてもダメなので、setTimeoutで処理を遅延して実行させる。

function setWeekendColor() {
var tr = $("table.ui-datepicker-calendar > tbody > tr");
for (var i = 0; i < tr.length; i++) {
if (tr[i].firstChild.firstChild.style)
tr[i].firstChild.firstChild.style.color = "red"; //sunday
if (tr[i].lastChild.firstChild.style)
tr[i].lastChild.firstChild.style.color = "blue"; //saturday
}
}
$.datepicker.setDefaults({
beforeShow: function () {setTimeout(setWeekendColor, 100);},
onChangeMonthYear: function () {setTimeout(setWeekendColor, 100);}
});
posted by 忘却の達人 at 09:09| Comment(0) | TrackBack(0) | JavaScript | このブログの読者になる | 更新情報をチェックする

2010年11月03日

jQuery UI Dialog:Dialog内の配置がめちゃくちゃになる

jQuery UI Dialog を使ったら、Dialog内の項目の配置がめちゃくちゃだった。原因はDialogとなるdivのstyleに「position: absolute;」を指定していためだったが、なぜこれがDialog内の配置に影響を与えるのかは分からない。ただこれを削除したら正常に表示された。
posted by 忘却の達人 at 00:32| Comment(0) | TrackBack(0) | JavaScript | このブログの読者になる | 更新情報をチェックする

2010年09月03日

php:可変長引数を受け取って別の可変長引数の関数に渡す

phpで可変長引数を受け取って別の可変長引数の関数に渡す。
引数を配列にして渡せる"call_user_func_array"を使用する。

ex.)test2が受け取った引数に1つ追加してtestに渡す。
function test() {
$cnt = func_num_args();
echo "引数の数:".$cnt."<br>\n";
$params = func_get_args();
while (list($idx, $value) = each($params)) {
echo "第".($idx+1)."引数:".$value."<br>\n";
}
}

function test2() {
$args = func_get_args();
call_user_func_array("test",array_merge(array("aaa"), $args));
}
test2("xxx", 123, "yyy");

   ↓

引数の数:4
第1引数:aaa
第2引数:xxx
第3引数:123
第4引数:yyy
posted by 忘却の達人 at 22:16| Comment(0) | TrackBack(0) | php | このブログの読者になる | 更新情報をチェックする

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。