質問 > 管理機能 > EC-CUBE管理画面からの編集ができなくなってしまった |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
mkhkck |
投稿日時: 2010/4/18 11:47
対応状況: −−−
|
一人前 登録日: 2009/7/18 居住地: 投稿: 98 |
EC-CUBE管理画面からの編集ができなくなってしまった EC-CUBE 2.3.4 を使っています。
使えるネットの自動インストールにてEC-CUBEをインストール後、 dataフォルダをprivateフォルダへ移動しました。 しかし、購入画面のプロセスで、途中から画面が真っ白になってしまうという現象が起き、 再度、使えるネットの自動インストールを行い、dataフォルダをprivateへ移動しました。 バックアップをとっておいたSmartyのdafaultフォルダ直下のファイル(フォルダではなく)を アップロードしました。 するとトップ画面は変更されました。 しかし、商品一覧や商品詳細画面が変更されない為、 EC-CUBEの管理画面から編集しようと、デザイン管理のページ詳細設定画面から 変更をかけ、登録ボタンを押しましたが、変更がされず、修正が反映されません。 ↑ これが、問題です。 因みに、トップページの編集や、レイアウト設定での変更は保存できました。 どうして、変更がきかなくなってしまったのでしょうか。。。 パーミッションの設定は、 Smartyのdefault以下は、フォルダ777、ファイル666です。 html/product/以下は、 フォルダ755、ファイル644です。 EC-CUBE青本のカスタマイズ編、P165の 「dataフォルダ、htmlフォルダの場所を変える」を参考にしました。 install.phpの中身は、 <?php define ('ECCUBE_INSTALL', 'ON'); define ('HTML_PATH', '/var/www/vhosts/DOMAIN/httpdocs/'); define ('SITE_URL', 'http://DOMAIN/'); define ('SSL_URL', 'http://DOMAIN/'); define ('URL_DIR', '/'); define ('DOMAIN_NAME', ''); define ('DB_TYPE', 'mysql'); define ('DB_USER', 'aoki-flower'); define ('DB_PASSWORD', '*****'); define ('DB_SERVER', 'localhost'); define ('DB_NAME', 'aokiflower'); define ('DB_PORT', ''); define ('DATA_PATH', '/var/www/vhosts/DOMAIN/private/data/'); define ('MOBILE_HTML_PATH', HTML_PATH . 'mobile/'); define ('MOBILE_SITE_URL', SITE_URL . 'mobile/'); define ('MOBILE_SSL_URL', SSL_URL . 'mobile/'); define ('MOBILE_URL_DIR', URL_DIR . 'mobile/'); ?> とし、 define.phpは、 <?php /** HTMLディレクトリからのDATAディレクトリの相対パス */ define("HTML2DATA_DIR", "/../private/data/"); /** DATA ディレクトリから HTML ディレクトリの相対パス */ define("DATA_DIR2HTML", "/../../httpdocs/"); ?> としました。 何か、原因が思い当たる方はいらっしゃいませんでしょうか。。。 |
msa |
投稿日時: 2010/4/18 17:31
対応状況: −−−
|
新米 登録日: 2010/4/18 居住地: 福岡県福岡市 投稿: 10 |
Re: EC-CUBE管理画面からの編集ができなくなってしまった html/user_data以下のパーミッションは適切でしょうか?
テンプレートファイルに変更を加えた場合は一見tplファイルの上書きをしているような錯覚を覚えますが実は html/user_data/packages/default 以下に新しいtplファイルが作成されますのでこちらのパーミッションが適切でないと更新ができないようです。 |
mkhkck |
投稿日時: 2010/4/19 16:52
対応状況: −−−
|
一人前 登録日: 2009/7/18 居住地: 投稿: 98 |
Re: EC-CUBE管理画面からの編集ができなくなってしまった ありがとうございます!
再度手動インストールを行うも、同様のエラーが起きます。 その他、違う障害に遭遇してしまいました。 EC-CUBEで入力した文字が、DBで文字化けしてしまいます。 →現在調査中 ■経緯 インストール完了後、 ?imgファイルの中身を httpdocs/user_data/packages/default/img内へ ファイル604 フォルダ705でアップ ?Smarty内を private/data/Smarty内へ ファイル604 フォルダ707でアップ ??の内部とは別のcategory.tplを private/data/Smarty/templates/default/bloc 内へ アップ ?独自CSS(ここではstyle.css)とimport.cssを httpdocs/user_data/packages/default /css 内へアップ しました。 その後、 ?デザイン管理のレイアウト設定をのTopページ、商品一覧、商品詳細画面を編集し保存 ?/private/data/Smarty/templates/default/bloc/ 直下に category.tpl(666)を再アップロード ?DBのdtb_category内の文字化けした文字を文字化けしない文字に修正 (MySQL の文字セット: UTF-8 Unicode (utf8)) →管理画面のカテゴリ管理の文字が文字化け →カテゴリ管理のカテゴリを1つだけ文字化け修正 ?デザイン管理のページ詳細設定の商品一覧画面を編集 → 編集問題なくできた → すると、httpdocs/user_data/packages/default/ 直下に list.tpl(666) ができる ?/private/data/Smarty/templates/default/ 直下に list.tpl(666)を再アップロード ?デザイン管理のブロック編集のカテゴリを編集 → 編集できなくなってしまった → httpdocs/user_data/packages/default/ 直下に category.tplはできない 昨日調べたHPに、上に関係しそうな事が載っていたので、調査中。。。 調べたけれど、どこのHPだったかわからなかったです。 ***追記*** ??で出来たと思われるファイルを発見 /httpdocs/user_data/packages/default/bloc/ (777) 直下に category.tpl(666)ができていた ?/httpdocs/user_data/packages/default/bloc/ (777) 直下に編集した category.tpl(666)を置いてみる → 編集が有効にならない |
msa |
投稿日時: 2010/4/19 19:24
対応状況: −−−
|
新米 登録日: 2010/4/18 居住地: 福岡県福岡市 投稿: 10 |
Re: EC-CUBE管理画面からの編集ができなくなってしまった いえいえ、こちらこそ日々試行錯誤やっておりますので少しでも参考にしていただければ幸いです。
まずデザイン管理画面でのブロック編集の表示ロジックですが ?db内のdtb_blocテーブルよりファイル名(tpl_path)を参照 ?これを基に/httpdocs/user_data/packages/default/bloc配下に同一ファイル名が存在するかを確認 ?もしなければ/private/data/Smarty/templates/default/bloc配下のファイルを使用 ?画面に表示 かなり大雑把に書いてしまいましたがこのような感じです。 前回のpathやパーミッションの設定については/httpdocs/user_data/packages/default/bloc/配下に新しいファイルもできているようですので問題なさそうですね。 mkhkckさんの?の「編集が有効にならない」というのはFTPなどでアップロード(上書き)した編集済みのcategory.tplがデザイン管理画面上で表示されない(デフォルトのcategory.tplのまま変化なし)ということでしょうか? それとも管理画面で登録ボタンを押しても更新されないということでしょうか? dtb_blocあたりも一度のぞいてみると解決の糸口が見つかるかもしれませんね。 また再インストール際、DBの初期化は行いましたでしょうか? 頑張って1つづつ解決していきましょう! |
mkhkck |
投稿日時: 2010/4/19 20:32
対応状況: −−−
|
一人前 登録日: 2009/7/18 居住地: 投稿: 98 |
Re: EC-CUBE管理画面からの編集ができなくなってしまった ご丁寧にありがとうございます!
?bloc/category.tplという名前のtpl_pathがdtb_blocに存在した 因みにbloc_nameが文字化けしていました ?category.tplという名前のファイルが/httpdocs/user_data/packages/default/bloc配下に存在しました >?の「編集が有効にならない」というのは FTPでアップロードしたという事です >また再インストール際、DBの初期化は行いましたでしょうか? わかりません。 初期化しない場合はチェックしてくださいという項目があったような気がします。そこで、チェックを入れなかった気はします。 再インストールします! がんばります。 |
mkhkck |
投稿日時: 2010/4/19 22:03
対応状況: −−−
|
一人前 登録日: 2009/7/18 居住地: 投稿: 98 |
Re: EC-CUBE管理画面からの編集ができなくなってしまった インストールは成功しましたが、DBを新たに作ったにも
かかわらず、また、インストール時、初期化を行った にもかかわらず、またDBが文字化けしました。。。 どうしたらよいのでしょうか。。。>< |
kaoring777 |
投稿日時: 2010/4/19 23:11
対応状況: −−−
|
一人前 登録日: 2009/7/28 居住地: 東京 投稿: 89 |
Re: EC-CUBE管理画面からの編集ができなくなってしまった ざっと読んだだけなので、外しているかもしれませんが
引用:
DB作成の際、照合順序utf8_general.ciではどうでしょうか? |
msa |
投稿日時: 2010/4/20 0:13
対応状況: −−−
|
新米 登録日: 2010/4/18 居住地: 福岡県福岡市 投稿: 10 |
Re: EC-CUBE管理画面からの編集ができなくなってしまった mkhkckさんお疲れ様です。
文字化けは管理画面で起こっていますか? それともPHPMyadminなどでしょうか? 詳細が不明なので一概には言えませんがデーターベースの文字化けはSQLサーバーとPHP側であるクライアントとの文字セットの相違から起こる事が多いです。 因みに私も使えるネットのサーバーを一部使用しておりますが シェルでテストデーターをDBに投入した際、文字化けが発生し下記構文を挿入後、再投入いたしましたら文字化けは解消された経緯がございます。 もしデーターベースがMySQLでしたら data/class/SC_DbConn.phpファイル内の 69行目の前に以下の構文を挿入して再インストールしてみてはいかがでしょうか? ----------------------------- if (DB_TYPE == 'mysql') { $g_arr_objDbConn[$this->dsn]->query('SET NAMES utf8'); $g_arr_objDbConn[$this->dsn]->query("SET SESSION sql_mode = 'ANSI'"); } ----------------------------- また私の所では 文字セット: UTF-8 Unicode (utf8) 照合順序:utf8_general_ci にて特に文字化け等は発生しておりません。 kaoring777さんご指摘の照合順序は文字セットとは別項目ですが念のため 確認はしておいた方が宜しいかと思います。 |
kaoring777 |
投稿日時: 2010/4/20 5:42
対応状況: −−−
|
一人前 登録日: 2009/7/28 居住地: 東京 投稿: 89 |
Re: EC-CUBE管理画面からの編集ができなくなってしまった 言葉足らずで失礼しました。
DB作成の際、照合順序を設定し間違えて文字化け…ていうのを見た事があったもので。 もしかしたらソレかな、、なんて思ってみました。 |
mkhkck |
投稿日時: 2010/4/20 10:37
対応状況: −−−
|
一人前 登録日: 2009/7/18 居住地: 投稿: 98 |
Re: EC-CUBE管理画面からの編集ができなくなってしまった kaoring777様 msa様
どうもありがとうございました! すみません!!!!><せっかく書いていただいたのに、 読む前にインストールを終えてしまっていました。 結果は、成功です。文字化けは解決しました。 msaさんのおっしゃるのと似てるかな?と思います。 内容は、 data/class/SC_DbConn.php の内容を書き換えるというもの 01 if(!isset($objDbConn->connection) || $new) { 02 if($dsn != "") { 03 $objDbConn = DB::connect($dsn, $options); 04 $this->dsn = $dsn; 05 // ↓ここに下記の2行を追加(utf8の場合) 06 // DBへの接続時に'SET NAMES utf8'を$objDbConnにexecuteしておくんだね。 07 // すると接続が維持される間は文字コードはutf8だぞって事になるんだね。 08 $buf = $objDbConn->prepare('SET NAMES utf8'); 09 $objDbConn->execute($buf); 10 } else { 11 if(defined('DEFAULT_DSN')) { 12 $objDbConn = DB::connect(DEFAULT_DSN, $options); 13 $this->dsn = DEFAULT_DSN; 14 } else { 15 return; 16 } 17 } 18 } です。 「EC-CUBE DB 文字化け」で検索し、 以下のページを参考にしました http://www.happyquality.com/2008/12/08/485.htm さて、これからやっと本題! category.tplの編集→更新ができるようにしなければ なりません。 がんばります! |
(1) 2 » |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |