【V5計画】CAFEMILK SHOPPING CART V5 (113レス)
上下前次1-新
40: 2009/07/27(月)13:01 ID:??? AAS
>>38の訂正 ちょっとだけ
require 'test.pl' > require 'test.pl';
sub test > sub testsub
41: 2009/07/27(月)13:04 ID:??? AAS
>>39 ちょっとだけ
2度のuse > 2度のnew
42: 2009/07/27(月)20:55 ID:??? AAS
このスレの書き込み、なにがしたいんだ?
43: 2009/07/28(火)00:49 ID:??? AAS
誰かがプログラム解析して情報載せてるんだろ
どこかwikiでも紹介したらそちらに行くんじゃ?
44: 2009/07/28(火)01:10 ID:??? AAS
ここはWEBプログラミング板だったよな
45: 2009/07/28(火)18:06 ID:??? AAS
■ データベース
独自のモジュールを使う
CSV形式
エクセルに対応してるらしい
カラム名を指定して操作する
2種類
通常
商品や会員などを扱う
ログ
レコードの操作があまりできない 読込と追記専門
省2
46: 2009/07/28(火)18:08 ID:??? AAS
基本的な使い方
my $database = Cafemilk_database_basic->connect ← オブジェクト方式connectで呼び出す
({
config => $config,
userdata => $userdata,
log_error => $log_error,
log_alert => $log_alert,
status => $status,
column_filename => 'database/item_column_list.csv', ← カラム名の情報
column_separator => ',',
省9
47: 2009/07/28(火)18:15 ID:??? AAS
レコードのマッチングをしたいとき
$database->get_record_all();
$database->match_database
({
column_name => 'カラム名',
match_word => '値',
});
my @lines = $database->get_extract_database();
レコードのサーチをしたいとき
$database->get_record_all();
省13
48: 2009/07/28(火)18:24 ID:??? AAS
レコードのソートをしたいとき
$database->get_record_all();
$database->sort_database
({
column_name => 'カラム名',
reverse_mode => '0', ← reverseしない
sort_mode => 'number_quick', ← number_quickかcharacter_quick
});
my @lines = $database->get_extract_database();
特定のレコードを差し替えたいとき
省7
49: 2009/07/28(火)18:28 ID:??? AAS
特定のレコードを削除したいとき
$database->delete_record
({
extract_column_name => 'カラム名', ← ターゲットのレコードを特定するために指定
extract_column_value => '値', ← ターゲットのレコードを特定するために指定
});
→ 削除は予約になるのでこのあとoverwriteが必要
操作したデータベースを格納(予約)
$database->set_extract_database
({
省8
50: 2009/07/29(水)13:10 ID:??? AAS
特定のレコード(1件)の抽出
my $extract_database = $database->extract_last_record
({
extract_column_name => 'カラム名',
extract_column_value => '値',
});
→ 通常では最初の該当レコードが、ログでは最後の該当レコードが帰ってくる
レコードの内容の取得
→レコードの内容をいろいろ操作するために必要
my @lines = $database->get_extract_database();
省17
51: 2009/07/29(水)13:14 ID:??? AAS
その他
get_stack ← レコードの数を返す
double_sort_database ← ダブルソート
set_write_forbid ← (何か問題があったときなど)書込禁止命令
merge_database ← 重複のあるログの統合
(ry
52: 2009/07/30(木)12:02 ID:9vO1Ag/1(1) AAS
DUMMY接続
データベースの待ち時間の低減や多重なアクセスによるロックを防ぐための
DUMMY接続ができる
my @lines = $database->get_extract_database();
undef $database; ← いったんデータベースへの接続を閉じて
my $database = Cafemilk_database_basic->dummy ← ダミー接続を開始する
({
config => $config,
userdata => $userdata,
log_error => $log_error,
省10
53: 2009/07/30(木)16:03 ID:??? AAS
■ データベースの動作速度と商品点数
CSVでデータベースを運用しているのでソートが遅い
つまり運用可能な商品点数はソートの性能で決まる
→ ソートをまともに使用するなら商品点数は1000点くらいが限度のよう
そこで商品のソートは設定で制限されている
$config->{item_category}{item_sort}{limit} = '100'; ← デフォルトは100点
→ これで5000点くらいまで大丈夫のようだ
54: 2009/08/01(土)00:36 ID:??? AAS
2009.07.31 スキン製作例を掲載しました。
55: 2009/08/04(火)16:09 ID:8qC9FCVp(1) AAS
■ 携帯に対応するには
標準では未対応となっているのですが、実は超簡単です。
1. main.cgiの以下のコメントをはずす
# 端末を判定します。ケータイ端末かPC端末かということを判定します。
# 判定には川崎有亮(かわさきゆうすけ)氏の phone.pl を使用します。
# phone.pl はなるべく最新版を使用するように心がけてください。
# phone.pl 配布元 : 外部リンク[html]:www.kawa.net
# require './pl/kawasaki/phone.pl';
# $userdata->{agent_type} = &phone_info();
2. あとはスキンを作るだけ
省2
56: 2009/08/06(木)05:54 ID:??? AAS
キャリア別に表示するには?
1. config_basicの以下の部分に追記
$config->{list}{device_type} = [qw(web mobile)];
↓
$config->{list}{device_type} = [qw(web mobile ezweb docomo jphone)];
2. cafemilk_cookie.plの以下の部分を修正
if (!$userdata->{agent_type}{type})
{
$userdata->{device_type} = $config->{default}{device_type};
}
省5
57: 2009/08/06(木)05:56 ID:??? AAS
if (!$userdata->{agent_type}{type})
{
$userdata->{device_type} = $config->{default}{device_type};
}
elsif ($userdata->{agent_type}{type} eq 'docomo')
{
$userdata->{device_type} = "docomo";
}
elsif ($userdata->{agent_type}{type} eq 'ezweb')
{
省14
58: 2009/08/06(木)06:13 ID:??? AAS
マルチ端末の話が出たのでおまけ
やろうとおもえば
PCのディスプレイ解像度に合わせた表示もできます
たとえば
$config->{list}{device_type}に PC800 PC1000 PC1200 PC1600 PC1900 といった値を追加して
webスキンからjavascriptでディスプレイの幅を飛ばし
幅の情報から$userdata->{device_type}を設定するようにする
という具合でたぶんOK。(無保証)
59: 2009/08/06(木)06:24 ID:??? AAS
さらにおまけ
同じような感覚でマルチ言語もできるはず
$userdata->{language_type}を使う
同じような感覚でマルチスキンを使って表示の切り替えも(ry
$userdata->{template_type}を使う
季節ごととか時間ごととかてきとうに
上下前次1-新書関写板覧索設栞歴
あと 54 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.007s