1月
30
2009
0

[EC-CUBE]お気に入り機能を追加するメモ
このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをYahoo!ブックマークに追加このエントリをFC2ブックマークに追加このエントリをNifty Clipに追加このエントリをPOOKMARK. Airlinesに追加このエントリをBuzzurl(バザール)に追加このエントリをChoixに追加このエントリをnewsingに追加

時間がないのでメモだけ。

EC-CUBEでログインしたユーザが商品をお気に入り登録できるようにする機能。
EC-CUBEの学校」でも使われている機能です。

導入の参考になるのは
チェンジセット 17162 – EC-CUBE Trac – Trac

このカスタマイズは既存のファイルもかなり触るので、間違えようによってはEC-CUBEが動かなくなります。簡単そうだとやってみてEC-CUBEが動かなくなってしまったなんていうと大変ですので、今回は詳しい解説を省かせていただきます*1 。Tracを読んでもできなそうだと感じた方はこのカスタマイズをしないことをお薦めします。そしてもちろん自己責任という言葉を胸に刻むのも忘れずに。

(続きを読む…)

  1. 以前行ったカスタマイズで「カテゴリに画像やコンテンツを登録できるようにする」というのをやったのですが、僕の説明不足で迷惑がかかってしまった方がいらっしゃいました。もちろん僕の書き方が悪かったりソースに間違いがあったりということが原因ですが、何かあったときに僕もすぐに対応することが難しいので、親切とはいえないと思いますがこのようなスタンスを取らせていただきます。ごめんなさいm_ _m []
Written by suzukenn in: 記事 | タグ: ,
1月
28
2009
2

[EC-CUBE]Win+Xampp環境でログイン後のリダイレクトに失敗する
このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをYahoo!ブックマークに追加このエントリをFC2ブックマークに追加このエントリをNifty Clipに追加このエントリをPOOKMARK. Airlinesに追加このエントリをBuzzurl(バザール)に追加このエントリをChoixに追加このエントリをnewsingに追加

概要

開発環境がWin+Xamppなんですが、この環境でログイン・ログアウト・会員登録時のリダイレクトに失敗してしまう問題があって困っておりました。同じ構成のEC-CUBEでLinuxサーバで動かすと問題は起きません。今日ようやく原因がわかったのでメモしておきますね。

このTIPSはWindowsでEC-CUBEを使っており、なおかつログイン後のリダイレクトに失敗する*1 方が対象になっておりますので、該当しない場合はこのTIPSの実践はおやめください。
後述の「解説」に事の次第を書いておきますので該当しない場合でも何かの参考にはなるかもしれません*2

(続きを読む…)

  1. 「http://%SITE_URL%/C://%インストールパス%」にリダイレクトされて、不正なページ移動と怒られる、もしくはエラーページが表示される []
  2. 記事を書くときはいつも、できるだけ皆さんの参考になるようなものを書きたいと思っているのですが、なかなか難しいです。おかしなところがありましたらご指摘いただけると幸いです []
Written by suzukenn in: 記事 | タグ: ,
1月
28
2009
0

[Skype]SkWebChatを入れてみました
このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをYahoo!ブックマークに追加このエントリをFC2ブックマークに追加このエントリをNifty Clipに追加このエントリをPOOKMARK. Airlinesに追加このエントリをBuzzurl(バザール)に追加このエントリをChoixに追加このエントリをnewsingに追加

akiyanさんの「Skype Web Chat はスポット利用にもいいかも : akiyan.com」こちらの記事を参考に僕もSkWebChatを入れてみました。

突然だれかからチャットが届くと思うと、、、どきどきするなぁ*1
でも、これはかなり便利なんじゃないかと。
お客様へのサポートなんかにも使えるんじゃないかな?

こんな素敵なサービスを無料で使わせていただけるなんて、このサービスを作られた株式会社ナレッジフローの中の方には感謝&リスペクトです :-)

後で消すかもしれませんがテストということでしばらくこの記事に貼り付けてみます。
僕は(お仕事の関係上仕方なく…)1日の大半をパソコンの前で過ごしているので、良かったら声をかけてみてください。

20090130追記
案の定誰にも相手してもらえないのでメニューにおいて置く事にします。いいんです。飾りなんです。気にしないでください。。orz

  1. 誰にも相手されずorzなことも十分に予想されますけれど []
Written by suzukenn in: メモ | タグ:
1月
23
2009
0

[EC-CUBE]自由ページの追加方法
このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをYahoo!ブックマークに追加このエントリをFC2ブックマークに追加このエントリをNifty Clipに追加このエントリをPOOKMARK. Airlinesに追加このエントリをBuzzurl(バザール)に追加このエントリをChoixに追加このエントリをnewsingに追加

EC-CUBEで自由なページ(商品一覧とか商品詳細とかMYページとかシステムが生成する以外のページ)の作り方がわからなくて30分くらい悩んでました。やっとわかったのでメモしておきます。

管理画面->デザイン管理->ページ詳細設定から追加できる。

ページを追加すると/html/user_data/default/%追加したファイル名%.tplが生成されるので、編集する場合は管理画面のテキストエリアかこちらを使う。
追加したページはそれぞれレイアウト設定を行うことができる。(スゴイ!)

それにしてもわからなかったー。マニュアルに書いてありますか?

Written by suzukenn in: メモ | タグ: ,
1月
23
2009
0

[PHP]簡単なCSVファイル読込み方法
このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをYahoo!ブックマークに追加このエントリをFC2ブックマークに追加このエントリをNifty Clipに追加このエントリをPOOKMARK. Airlinesに追加このエントリをBuzzurl(バザール)に追加このエントリをChoixに追加このエントリをnewsingに追加

概要

簡単シリーズ2段目*1
PHPでCSVを読込む方法を簡単にメモ*2

読込みフォームを作る

まずはフォームを用意します。
ここでの注意点はFormタグのenctype属性に”multipart/form-data”の指定を忘れないこと。僕はよく忘れます。

後は普通に<input type=”file” />と<input type=”submit” />を用意してあげるだけ。
以下サンプル

<form enctype="multipart/form-data" method="post" >
<table class="form">
<tr>
<td class="title">CSVファイルを指定してください</td>
<td class="contents"><input type="file" name="csvfile" size="50" value="" /></td>
</tr>
<tr>
<td class="button" colspan="2">
<input type="submit" name="submit" value="CSVファイル読込み" />
</td>
</tr>
</table>
</form>

POSTしたファイルを読み込む

POSTされたファイル情報は定義済み変数の$_FILESに保存されます。
今回はファイルの中身を読み込むだけなので、$_FILES['%<input type="file" />のname属性%']['tmp_name']だけ使います。

処理の流れは次のようになります。

  1. ファイルを開く(fopen)
  2. CSVファイルを配列に入れる(fgetcsv)
  3. ついでに文字コード変換(mb_convert_variables)

こんな感じ。最後の文字コード変換については、エクセルから吐き出したCSVファイルはSJIS(SJIS-winだっけ?)なので、webで使う場合にはたいてい文字コード変換が必要になるだろうということで念のため。僕もすぐに忘れそうだし。

ソース見てもらったほうが早いと思うので、どうぞ。

$tmp = fopen($_FILES['usefile']['tmp_name'], "r");
while ($csv[] = fgetcsv($tmp, "1024")) {}
// 配列 $csv の文字コードをSJIS-winからUTF-8に変換
mb_convert_variables("UTF-8", "SJIS-win", $csv);

fopen()でファイルを開いて$tmpに代入、
fgetcsvで$tmpを配列に展開するんだけど、fgetcsvするとポインタが勝手に進んでくれて、しかも最後まで行くとfalseを返してくれるので、whileでまわすだけでOK。$csvに代入していく。
最後にmb_convert_variables()で配列の文字コードを丸ごとSJIS-winからUTF-8に変換します。

たったこれだけです。簡単ですね。

ちゃんと検証して書いていないので、もし間違いや表現に誤りがあればご指摘いただくと有り難いです。質問などありましたらお気軽にコメントください。ちゃんとした質問ならちゃんとお応えしたいと思います。
ご清聴ありがとうございました。

全然関係ないんですが、SyntaxHighlighterでインデントを表示するのってどうすればいいんでしょう…
タブはもちろん駄目そうですが、スペースでも駄目なんですよね。
他所様のところではインデントちゃんとできているのを見かけるのですが、ご存知の方がいらっしゃいましたら教えてくださいませm_ _m

  1. これいいかも。あとで記事へのリンクをページにまとめると便利な自分用のTIPS集の出来上がりと []
  2. ちなみにタイトルの”簡単な”は「簡単な読込み方法」ではなく、「読み込み方法の簡単な説明」という解釈をしていただけると有難いです。 []
Written by suzukenn in: メモ | タグ: ,

| I have been indebted to Aeros Theme. | Background image owner is NASA.