ぼんずーず
EC-CUBEを使ってみる(3) -Tips など-
- 2010-06-02 (水)
- カテゴリ:eccube

EC-CUBEはファイル群に慣れればカスタマイズもとってもしやすいです。
のでその後はひっかかるところもなく,各種開発が進行しています。
お役立ちTipsなど書いてみようと思います。
html と data フォルダの配置について
data はWEB上から参照できない位置に置きましょう。
そして,html もPublic_Htmlなどに展開すればURLがすっきりします。
お好きに配置をしたら,
data/install.php
の
DATA_PATH を 絶対パスで決め打ちしておきましょう。
そして
html/define.php
でhtml からの data
と
data からの html
への参照方法をそれぞれ相対パスで指定しておくことで正常に動きます。
カスタマイズ方法
data/class_extends/page_extends/以下
の,アクセスURL通りのファイルを修正します。
動作の確認などは
data/class/pages/以下
の各ファイルの
process()メソッドを追います。
デバッガ使わなくても手動dumpかlog吐かせてデータ元を確認して,データベースいじったりフォーム追加したりして画面完成すると思います。
EC-CUBEを使ってみる(2)- Eclipseで開発したい方のためのSmarty対応 [不完全] -
- 2010-06-02 (水)
- カテゴリ:eclipse

前回に引き続き,開発環境の構築中。
EC-CUBEではテンプレートエンジンにSmartyが使われている。
Eclipse+PDTでEC-CUBEをプロジェクトにすると,data/smarty/templateの中身あたりがほとんどエラーになる。
Window > Preferences > Workspace > Text file encoding を UTF-8
にしてインポートし直すが直らない。
Window > Preferences > General > ContentTypes で *.tpl を htmlに割り当ててみたりするけど
<img =”<!- - smarty 記述 - ->”>
なんかはエラーのまま。
おまけにtplファイルの先頭の
<!- -
がPHP のシンタックスエラーとか言われてる。
<?php
で始めろと仰る。
smarty eclipse で検索してみる
smarty support for pdt
http://code.google.com/p/smartypdt/
というものを発見。
対応しているPDTのバージョンが PDT2 ~ と, PDT2.2 のファイルがある。
私の環境は Eclipse3.5 と PDT2.1 だったので,
Eclipse3.5 + PDT2.2 のHeliosを解凍し,そこにつっこんでみる。
インストール方法は
eclipse
Help > Install New Software > Add > Archive でダウンロードした smarty pdt 0.9.0 のアーカイブを指定する。
そして Group Items By Category のチェックを外すと,smarty pdt が現れる。
チェックしてNext で同意して署名されてないOK押してRestartする。
と,Preferences > Generarl >ContentType の Text の PhpContentType に SmartyTemplate が追加されていたり
Preferences に Smarty が追加されていたりする。
ここで,PHP Explorer(デフォルトで左ペイン)の現在のPHPプロジェクトを右クリックして
Configure > Add Smarty Support
を選ぶと,
Htmlタグ関連のエラーは表示されなくなる。
しかし,PHPシンタックスエラー(
<!- -
の方) は消えない。
さらに確認してみると,HTMLのタグのwarningsなんかは残っている。
結局は Eclipse に EC-CUBE のSmartyテンプレートを上手く認識させられない
とりあえずここまでやったことは意味なかったのかなと,Smarty Pdt を導入していない他versionのEclipseにてEC-CUBE プロジェクトを作成してみる。
すると,ContentType や TextEncoding の設定を行うが, *.tpl のファイルは全てUTF-8 として開いてくれず,
日本語のコメント部分が化けてエラーが7000箇所とかになっている。
そうそう,そういえばこの症状が我慢できなくて,EclipseのSmarty対応を探したのだったすっかり忘れていた。
ということで, Eclipseを使ってEC-CUBEを開発したい方はSmartyPdt入れることで気持ち悪さが多少軽減される・・・かもしれない?!
気になる方は導入してみてください。
戦いは続く・・・。
EC-CUBEを使ってみる(1)-開発環境を整える-
- 2010-06-02 (水)
- カテゴリ:eccube

環境
[ec-cube]
ver2.4.3
[mysql]
5.1
[php]
5.2
[apache]
2.2
[windows]
XP SP3
インストール
データベース
とりあえず,mysql。
噂によるとPGの方が早いらしい。
でもmysqlでもチューニング次第で早くなるそうなので
気にせずmysql。
create database `db_name_dev`;
create database `db_name_test`;
grant all on db_name_dev.* to db_user@localhost identified by ‘db_user_pass’;
grant all on db_name_test.* to db_user@localhost identified by ‘db_user_pass’;
あたりのみやっておく。
ファイル
Windows以外の場合はパーミッションを全てクリアする。
あらかじめやっても良いけど,やってなくてもインストール中に全部怒られるのでその都度直しても良い。
Windowsの場合は関係無いが,
もしも ~~ファイルありません とか ~~ファイルパーミッション直して など言われたら,
ファイルorフォルダ自体無い可能性があるので,解凍してファイルコピーからやり直す。
eclipseのインポートでtemp とか upload とかフォルダコピーされていなくてこんなんなりました。
phpmyadminでの文字化け
collationがどうのとか,my.iniにどうのという記事が多いので,そうなのかもしれないが,
だいたい共有サーバで使いますよね?
上記が問題なら,どうしようもないことがほとんどでは?!
開発環境では,
data/class/SC_DbConn.php
//MySQL文字化け対策(MySQLで文字化けする場合は以下のコメントアウトをはずして動作確認してみてください。) //if (DB_TYPE == 'mysql') { // $objDbConn->query('SET NAMES utf8'); //}
のコメントアウトを外してDB作り直して再度インストールしたら直りました。
続く・・・。
CakePhp1.2.7 で Acl構築
- 2010-05-29 (土)
- カテゴリ:cakephp

CakePhpでアクセス制御の仕組みを実装したいというとき,
Auth , Acl , Session , Security コンポーネントを利用することでcakeに組み込まれている強力なAcl-Aroの管理システムを構築することが可能です。
どんな物をどう作ろうと,ユーザ登録や管理者向けの機能がある限り,アクセスを制御できる仕組みを作ることになりますので,
特別な事情が無い限り,この方法を利用できるようにした方が良いと思います。
アプリケーションの準備 :: ACL を制御するシンプルなアプリケーション :: 開発例 :: マニュアル :: 1.2 Collection :: The Cookbook
CakePHPでACLを実装する際のメモ
CakePHP 10.2 ACL 開発例の補足 - WORKS-BB - オープンソース、PHP開発、ホームページ作成、ブログカスタマイズ
Auth and ACL an end to end tutorial pt. 1 | Mark Story
CakePHP ACL Database Setup: ARO / ACO structure? - Stack Overflow
上記サイトを参考にしていただければcakeに慣れた方ならエントリーを追いながら問題なく作れると思います。
ですが,Authコンポーネントの利用が必須なので,すでに完成しているアプリに追加で組み込む場合などは難しいかもしれません。
要件にもよるのですが,元々が単純な仕組みなので小規模ならapp_controllerに直書きできたりします。
しかし,ユーザやグループや管理者が増えたり,コントローラが増えたり・・・となってくると記述も増えてメンテナンスもしにくくなるので
どこかでDBで管理できる仕組みが必要となってきます。
ちなみに,cakeに精通していない段階で(特にbake)挑戦すると,各所でつまづいて挫折・・・なんてこともあるかもしれません。
私も最初はなかなか理解できず,自作していました。
その間,関連するエントリーをプリントアウトして何度も読みました。
あとはCakeやRDBMSと仲良くなってくると自然と理解できるようになりました。
もしも「ACLよく分からない」と感じられて昔ハマったままだったりしたら,
そろそろいける!と思ったころに
CakePHPでACLを実装する際のメモ
CakePHP 10.2 ACL 開発例の補足 - WORKS-BB - オープンソース、PHP開発、ホームページ作成、ブログカスタマイズ
こちらの記事で挑戦してみてください。
その際
cake schema generate
cake schema run create DbAcl
で
schema.php could not be loaded
cakephp try cake bake
などエラー出た場合は
php cake.php schema generate
php cake.php schema run create DbAcl
で試してみてください。
UserとGroupテーブルを利用する古い方法
realm3 web applications, LLC : Setting Up User Groups With ACL and Auth in CakePHP 1.2
Auth component + Cake 1.2 - CakePHP | Google グループ
こちらも利用はしなくてもとても勉強になります。
windowsXPのmysql5.1でrootパスワードを忘れた
- 2010-05-27 (木)
- カテゴリ:mysql

インストーラ有りの場合(windowsのサービスとしてmysqlが動いている方)
MySQL :: MySQL 5.1 リファレンスマニュアル :: B.1.4.1 How to Reset the Root Password
下のほうにUnix系の場合の記述もあります。
インストーラ無し(cmd > mysqld –consoleとかで起動している方)
1.権限フリーオプション付でmysql起動
まずはmysqlを停止する。
その後
mysqlフォルダ
bin/my.ini
の
[mysqld]
に
skip-grant-tables
を追加して再起動。
もしくは mysqld –skip-grant-tables のようにオプション付で直接起動
2.rootパスワードを再設定する
どう起動したかにもよりますが
とにかく起動時とは別のcmd開いて
mysql -uroot mysql
でrootログインできます。
ログインしましたら,いくつか方法はありますがとにかくuserテーブルのrootのパスワードを変更します。(*下にも少し詳しく書きました)
今回は
mysql> UPDATE mysql.user SET Password=PASSWORD('newpassword') WHERE User='root';
でフィールドを変更後
mysql> flush privileges;
反映しました。
余談ですが上実行後
Rows matched: 2 Changed: 2 Warnings: 0
と言われなんで2なのと思い
select * from mysql.user where User=’root’;
してみるとhostが
localhost
と
127.0.0.1
のrootが2人いました。パスワードは一緒でした。
これがいたって普通の状態なのか,それとも過去に何か理由があって自分で設定したのかは覚えていないです。
確か127.0.0.1をlocalhostとmysqlに認識させるコマンドがあったような気もして,
というか普通 @localhost で済むような。
とりあえず今のところ困っていないのでいいのです。
3.rootで通常ログインして確認
ini書き換えた方は skip-grant-tables を必ずコメントアウトするか削除してください。
cmd > mysql -uroot -pnewpassword
でログイン可能か確認できれば無事完了です。
4.補足など
補足1というかまとめ
mysqlのrootパスワード忘れ対策として紹介されている方法は,
権限フリー状態オプションで起動=>rootのパスワード再設定
もしくは
権限初期化=>rootのパスワード初期設定
のどちらかなのですが,後者は他のユーザどうするの・・・とかめんどいので前者ができるならその方が良いと思います。(外部へのネットワークは遮断して行うのが良いと思います)
あと,mysql 4 と mysql 5で多分変わらないと思います。・・・多分。
違いがあるとすればold password関連とかだと思いますが4でもPASSWORD('’)でハッシュ化する部分がどこかの記事で見た覚えがあるので・・・多分。
詳しくは試すか調べるかしてみてください。
補足2 xammp版の場合は初期化するbatがあるそうです
補足3 その他
MySQL :: MySQL 5.1 リファレンスマニュアル :: 4.7.8 Access denied エラーの原因
その他Access Deniedについて書いてあります。
おなじみのパスワード間違いによるAccess Denied
Access denied for user 'root'@'localhost' (using password: YES)
こちらについても詳しく載っています。
MySQL :: MySQL 4.1 リファレンスマニュアル :: 4.4.4 MySQL 権限の初期設定
パスワードの初期設定の方法が3種類
1.SET PASSWORD FOR を使う
2.テーブルを直接UPDATE
shell> mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD('new_password')
-> WHERE user='root';
mysql> FLUSH PRIVILEGES;
3.mydsqladmin を使う
載っています。
再設定時にもお好みの方法で。
eclipse3.5とPDTにsubversionプラグインのインストール
- 2010-05-27 (木)
- カテゴリ:開発環境

以前,何かしらのsvn用プラグインはインストールして利用していましたが
Eclipse 3.4でのバーション管理方法(Subversion編) ~Eclipse 3.4入門~(1/4):CodeZine
こちらの紹介通りにとりあえず作業してみたのでメモ。
eclipseのバージョンか何かの違いでeclipseの新規ソフトインストール時の表示が上サイトと少し違ったので対応させてみます。
何で日本語化したのか覚えていないので環境の違いなど乗せられず参考にならにかもしれませんが・・・。
[codezineさんの表記]:[ヘルプ(H)]-[ソフトウェア更新…]を選択し[使用可能なソフトウェア]タブで[サイトの追加]ボタンをクリック
[私の環境]:ヘルプ > 新規ソフトウェアのインストール > 一番上の作業対象の右端の追加ボタンクリック
でロケーションの入力ができるのですが,一緒に名前も(多分自分用の覚書)入力しなくてはならないので,
URLを入力しておきました(自分でつけてしまうと,後々分かりづらくなりそうなので)。
追加が終わったら
作業対象のメニューバーを–すべての使用可能なサイト– にして,あとはcodezineさん記述どおりに
svn をフィルターに入力するとプラグインを選べます。
ここで,私の環境ではプラグイン名が全て日本語化されていたので対応するものを探してみました。
[codezineさん表記]:
Subversive SVN Term Provider
Subversive SVN Term Provider Localization
Subversive SVN Connecters
SVNKit 1.2.2 Inplementation
にチェックを入れる
[私の環境での表記]:
Subversive SVNチーム・プロバイダー(インキュベーション)
Subversive SVNチーム・プロバイダー・ローカライゼーション(オプション)(インキュベーション)
Subversive SVNコネクター
SVNKit 1.2.2実装(オプション)
まあ・・・まんまなのですが,せっかく探したので迷った方のお役に立てればと思い書いておきます。
その後,インストール内容を確認し,使用条件に同意するを選択してインストール,と順番に進めばインストールが始まります。
その後証明書を信頼しますかときかれますのでチェック入れて続行。
再起動を促されるのでeclipse再起動。
以上で,codezineさんの記事どおりにsvnプラグインのインストールが完了しました。
* * * * * * * * * * * * * * * *
今回書いていて思ったのは,自分の環境て一度インストールしてしまうと詳しく覚えていないですよねバージョンとか。
頻繁に環境を構築している方々は覚えているものなのかもしれませんが,仕事でやる以上はしっかりと記録しておかなくてはいけないとあらためて感じました。当たり前のことかもしれませんが,私はできていなかったので反省。
何事も経験でしょうが,環境を移動する場合やマシントラブルなど予期せぬ事態で困るのは自分なんですよね。
明日にでもセットにして焼いておこう・・・。
visualsvn serverをインストールする
- 2010-05-27 (木)
- カテゴリ:開発環境

windowsXP + apache2.2 + mysql5.1がインストール済みで開発やテストに使用しているマシン上にて
eclipse3.5 と PDT + svn での新規アプリケーション開発時メモ。
Eclipse 3.4でのバーション管理方法(Subversion編) ~Eclipse 3.4入門~(1/4):CodeZine
こちらの記事を参考にvisualsvn serverをインストールするがすったもんだしたのでその記録です。
1)ダウンロードしインストーラを起動,途中でエラーが出る。
~~がfailed というエラー(次回再現できたらエラー内容も載せます)。
インストーラのfinishを押すと,rollbackしてダイアログで
「途中でエラーが発生したので未完全なインストールです
再度インストーラを起動してmodifyしてください」
と言われる。
この画面で
apache2.2 と visualsvn server をインストールしようとしていたことを初めて告げられる。
httpサーバ同梱?
マシンでは元々入っているapacheが走っていたので,エラーの原因はこれかなと思い
visualsvn serverのみのインストーラなど無いのかなと再びダウンロードサイトを確認するがパッケージは1種類のみでした。
2)再び,最初にダウンロードしていたインストーラを起動し,
「visualsvn managerのみインストール」を選択して開始を押す。
さきほどとは違う画面が続いてインストールが完了したので上手いこと行ったのかと思いmanagerを起動してみると,
「visualsvn serverが未インストールです」と表示されている。
3)server と manager は別物で, server のみ(apacheいらない)インストールという項目が無いのでなんか紛らわしいと
思いながら三たび,最初にダウンロードしたインストーラを起動する。
と, modify と 削除と何か~ を選べる状態になっていました。
初回インストール時のエラー発生時に言っていたmodifyしてくださいとはこのことだったらしい。
modifyを選択し,開始を押すとシステムをなんちゃらしています~~など表示され,じきにインストールが正常に終わりました。
4.managerを起動するとcodezineで紹介されている通りの画面になったので
新規リポジトリを作成し,svnサーバの準備が完了しました。
- タグ: svn
wordpress2.8をpdo_sqlite3で使いたい
- 2009-09-26 (土)
手順
wordpress はお好きに2.3以上を用意します。
下記プラグインを組み込みます
http://wordpress.org/extend/plugins/pdo-for-wordpress/
アップしてアクセスしてインストールしてログインします。
問題点
環境によりインストールできなかったり不具合があったりするので下記に手がかりを残します。
- No Tags
本日の個人的メモ
- 2009-09-25 (金)
- カテゴリ:ちょっと一言

Windows TIPS — HINT:環境変数を変更する
MySQLクイック・リファレンス
MySQLのパスワードを忘れてしまった・・・ ?MySQL 5.0のパスワードのリセット方法? - Mattari Memo
Windows版TextMateのテキストエディタ『Intype』がスゴイ | LIFE Script! from AvanHeart
WordPress ? PDO (SQLite) For Wordpress ? WordPress Plugins
ページ送りナビゲーションには display:inline-block が超便利 | バシャログ。
[使えるCSSテクニックVol.2] CSS を使った見栄えの良いページャー | バシャログ。
CakePHP 1.2の単体テスト作成にはbakeが便利 (前編) | バシャログ。
CakePHP 1.2の単体テスト作成にはbakeが便利 (後編) | バシャログ。
CakePHP Test Suiteをインストールする [dozo dokuwiki.php]
CakePHP1.2でdBugを使って快適デバック - Multiple Choices
- No Tags
xampp1.6.7 windowsXPsp2 の mysql5.0.67の初期設定
- 2009-09-25 (金)
charsetをutf-8にして色々便利に使いたい
charsetは
c:\xampp\mysql\bin の my.cnf の
[mysqld]
に
default-character-set=utf8 skip-character-set-client-handshake
を加える
character-set-server = latin1 collation-server = latin1_general_ci
があったらコメントアウト
#character-set-server = latin1 #collation-server = latin1_general_ci
あと
[mysqldump] と
[mysql]にも
default-character-set=utf8
を加える
rootパスワードの設定
cmd で
mysql/bin/mysqladmin -u root password fugafuga
- No Tags
- タグクラウド
- 911 98 Acl add on ADSL ajax android apache api apxs bake bash bind borland BSE c++ cakephp centOS centOS5 centos6 chrome chroot clamav combobox configure cpan css css3 ctp curl C言語 database db dns dojo dom dos dovecot dreamweaver ECCUBE eclipse EM Excel exec php favicon firefox firewall git html http httpd ids IE8 iptables ipマスカレード java javascript jquery json lan lightbox linux Lithium mailserver make mbr model mongoDB movabletype mozc mysql nec nic oscommerce password pbr pbs pci pcre PDF pear perl php php4.3.9 php5.2 php5.3 phpexec phpのエラーコード plugin pop3 postfix pppoe Python ruby Ruby on Rails sftp simpletest SMAP Smarty smtp snort SPAM sql sqlite ssh sugarsync svn Synergy TCP/IP toitoiseSVN tripwire ubuntu uml validation vim vimperator VMwarePlayer vnc vps web webmin web開発 windows windowsXP wine Word wordpress xampp xml zen cart zen coding androidアプリ えひめAI くしゃみ さくらvps ひかり ひかり接続 アキヒト アンチウィルス イカ インデックス エコ エラー オリンピック カスタマイズ カスタムフィールド カタカナ キーワードEYE シェルスクリプト シュレッダー ジーオーグループ スクリプト セキュリティ センター直前 ソルトレイク タコ ダイアルアップ ダウンタウン ツール テレビ テレホーダイ テロ デバッグ デュアルブート データサルベージ ネットショップ ネットワーク ハイライト バイク バックアップ バッファオーバーフロー バージョン切り替え バージョン管理 ファイル共有 フリーズ ブックオフ プラグイン プリンタ プログラミング プーチン マイケルジャクソン マコーレ・カルキン マルウェア メモ メール リキッドレイアウト リサイクル リビルド リポジトリ レイアウト レンタルサーバー 不満 事故 人生 仮想化 再生紙 別れ 加圧式ボールペン 参考サイト 受験 哲学 変数 夏 夏目漱石 夢十夜 家族 島谷ひとみ 怠惰 怪奇 感謝 技術メモ 文字 文字コード 料理 旅 楽天API 正月 歯痛 焼き豚 牛肉 犬 理科年表 環境問題 生きる 画像 示談金 視覚 言葉 透過 開発環境 降水量 雨 青画面 風邪 飲みすぎ google
- 検索
- Feeds
- Ads