* ログイン   * ユーザー登録 * FAQ    * 検索
現在時刻 - 2010年9月03日(金) 1:42 am

All times are UTC + 9 hours




新しいトピックを投稿する トピックへ返信する  [ 10 件の記事 ] 
作成者 メッセージ
 記事の件名: 管理画面からキーワードを埋め込む時のエラー
投稿記事Posted: 2008年10月08日(水) 8:56 pm 
オフライン

登録日時: 2008年5月11日(日) 4:03 pm
記事: 163
所在地: 滋賀県草津市
いつもお世話になっております。

運営に差しさわりが無いエラーが複数あり、時間が出来た時に少しずつ解決して行こうと思っています。

自分で解決できないものだけ少しずつ相談させていただきますのでご助言宜しくお願いします。

管理画面の商品・カテゴリの管理から、カテゴリにキーワードを埋め込むとき時々下記のようなエラーが出ます。
うんともすんとも動かず、よく分かりませんがBACK buttonとあるのでブラウザの戻るで戻って別の画面に行っていました。
全てのカテゴリで登録できないわけではなく時々発生します。
(一度発生したカテゴリは絶対登録できません。)

1062 Duplicate entry '1219-1' for key 1
in:
[insert into meta_tags_categories_description (metatags_title, metatags_keywords, metatags_description, categories_id, language_id) values ('', '', '', '1219', '1')]
If you were entering information, press the BACK button in your browser and re-check the information you had entered to be sure you left no blank fields.

頭が弱いのでエキサイト翻訳にかけたら下のような翻訳が出ました。

1062は主要な1のために以下にエントリー'1219-1'をコピーします。
_カテゴリ_記述(metatags_タイトル、metatags_キーワード、metatags_記述、カテゴリ_イド、言語_イド)値をメタ_タグに挿入してください、(「」、「''1219'、1'、)、情報を入力していて、あなたのブラウザでバックボタンを押して、情報を再確認するならあなたがあなたがどんな空白の野原も出なかったのを確信しているように入った」

余計分かりません。
掲示板内検索しようと思いましたがどういったキーワードで検索すればいいか分からず、『メタタグ』『管理画面』などで検索して数箇所見ただけです。

既にどこかで解決済みでしたらリンク先教えていただけると幸いです。

宜しくお願いします。

_________________
縲懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€彌n激安工具通販
http://www.koto-tool.com
100円の商品でも送料無料
http://www.esco.koto-tool.com
zencart向け擬似ショッピングモール
http://www.affiliate.koto-tool.com

Zen Cart 1.3.0.2-l10n-jp-4
サーバOS: Linux 2.6.22-4-amd64
PHP バージョン: 5.2.0-8
データベース: MySQL 5.0.32
縲懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€鰀


この記事をリポートする
トップへ
 プロフィール  
引用付きで返信する  
 記事の件名: Re: 管理画面からキーワードを埋め込む時のエラー
投稿記事Posted: 2008年10月10日(金) 10:10 pm 
オフライン
アバター

登録日時: 2005年9月27日(火) 1:30 pm
記事: 1631
所在地: 大阪府大阪市天王寺区上本町
こんにちわ。kimonoです :)
絶対にそれが理由という訳ではありませんが、私も一度zen-deraさんの携帯モジュールで同様の件があり、バグ報告をさせていただき、修正していただいてもらったことがあります。
後よくやることは、携帯のモジュールのインストールとかアンインストールでデーターをコピーし忘れたり、削除し忘れたり、出来なかったりしたため、同じようなバグを出したことがあります。
データーベースの枠が携帯用が作られてなかったり、携帯用だけ入っていたりして、入力出来なかったのでした。

全く違うかもしれませんので、一応^^;

_________________
☆☆☆CMS専用高速レンタルサーバー、テンプレート配布、独自SSL、各種決済代行、各種カスタマイズしてます☆☆☆
会社サイト XOOPS&ZOX、Zen Cart、アフェリエイト、マルチサイト
http://www.obitastar.co.jp/
http://server.obitastar.co.jp/
http://template.obitastar.co.jp/
運営サイト(着物) Zen Cart
http://www.online-kimono.jp/


この記事をリポートする
トップへ
 プロフィール  
引用付きで返信する  
 記事の件名: Re: 管理画面からキーワードを埋め込む時のエラー
投稿記事Posted: 2008年10月10日(金) 10:55 pm 
オフライン

登録日時: 2008年5月11日(日) 4:03 pm
記事: 163
所在地: 滋賀県草津市
kimonoさんいつもありがとうございます。

その可能性が大です。

一度そのあたりをきちんとアンインストールしてやり直そうと思います。

また報告に参ります。

_________________
縲懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€彌n激安工具通販
http://www.koto-tool.com
100円の商品でも送料無料
http://www.esco.koto-tool.com
zencart向け擬似ショッピングモール
http://www.affiliate.koto-tool.com

Zen Cart 1.3.0.2-l10n-jp-4
サーバOS: Linux 2.6.22-4-amd64
PHP バージョン: 5.2.0-8
データベース: MySQL 5.0.32
縲懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€鰀


この記事をリポートする
トップへ
 プロフィール  
引用付きで返信する  
 記事の件名: Re: 管理画面からキーワードを埋め込む時のエラー
投稿記事Posted: 2008年10月11日(土) 1:31 pm 
オフライン

登録日時: 2008年5月11日(日) 4:03 pm
記事: 163
所在地: 滋賀県草津市
ケイタイパックアンインストール&再インストールしてみました。

他の不具合は修正されたのですが、この部分はそのままですねぇ。。。

ん~別の所に問題があるんですかねぇ?

_________________
縲懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€彌n激安工具通販
http://www.koto-tool.com
100円の商品でも送料無料
http://www.esco.koto-tool.com
zencart向け擬似ショッピングモール
http://www.affiliate.koto-tool.com

Zen Cart 1.3.0.2-l10n-jp-4
サーバOS: Linux 2.6.22-4-amd64
PHP バージョン: 5.2.0-8
データベース: MySQL 5.0.32
縲懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€鰀


この記事をリポートする
トップへ
 プロフィール  
引用付きで返信する  
 記事の件名: Re: 管理画面からキーワードを埋め込む時のエラー
投稿記事Posted: 2008年10月11日(土) 1:37 pm 
オフライン
アバター

登録日時: 2005年9月27日(火) 1:30 pm
記事: 1631
所在地: 大阪府大阪市天王寺区上本町
新規の何も弄ってないサイトに携帯パックを入れて問題なければ携帯の問題じゃなく、問題があれば携帯の問題じゃ駄目ですかね?^^;
後は携帯のバグ報告したのもそんなに前じゃないので、最新にしないとそのバグフィックスも直ってないはずです。

_________________
☆☆☆CMS専用高速レンタルサーバー、テンプレート配布、独自SSL、各種決済代行、各種カスタマイズしてます☆☆☆
会社サイト XOOPS&ZOX、Zen Cart、アフェリエイト、マルチサイト
http://www.obitastar.co.jp/
http://server.obitastar.co.jp/
http://template.obitastar.co.jp/
運営サイト(着物) Zen Cart
http://www.online-kimono.jp/


この記事をリポートする
トップへ
 プロフィール  
引用付きで返信する  
 記事の件名: Re: 管理画面からキーワードを埋め込む時のエラー
投稿記事Posted: 2008年10月11日(土) 1:46 pm 
オフライン

登録日時: 2008年5月11日(日) 4:03 pm
記事: 163
所在地: 滋賀県草津市
差分のmblplus_202_diffより後の話ですか?

現在新規にzencartをインストールして、データベース入れて必要箇所を消して再インストールした状態です。

いちどzenderaさんにもその件聞いてみます。

_________________
縲懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€彌n激安工具通販
http://www.koto-tool.com
100円の商品でも送料無料
http://www.esco.koto-tool.com
zencart向け擬似ショッピングモール
http://www.affiliate.koto-tool.com

Zen Cart 1.3.0.2-l10n-jp-4
サーバOS: Linux 2.6.22-4-amd64
PHP バージョン: 5.2.0-8
データベース: MySQL 5.0.32
縲懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€鰀


この記事をリポートする
トップへ
 プロフィール  
引用付きで返信する  
 記事の件名: Re: 管理画面からキーワードを埋め込む時のエラー
投稿記事Posted: 2008年10月12日(日) 8:28 am 
オフライン
アバター

登録日時: 2006年9月04日(月) 12:53 pm
記事: 314
所在地: 静岡県静岡市
mmochiです。

ちょっと気になったので調べました。
(メタタグあんまり触らないために知識が不足してたのでついでw)

まず、誤解の無いように先に書きますが、この症状はzen-deraさんのケータイパックにおけるバグではありません。
ZenCartデフォルトのバグです。


下記の操作を行ってみてください。皆さん再現すると思います。

1.カテゴリのメタタグを全ての入力欄を空欄で登録する。
2.再度同一カテゴリのメタタグ欄を空欄で登録する。
3.デュプリケートエラー。

原因はadmin/categories.php 244行目付近 // bof: categories meta tags から // eof: categories meta tagsの間の記述です。

コード:
      // bof: categories meta tags
      case 'update_category_meta_tags':
      // add or update meta tags
      //die('I SEE ' . $action . ' - ' . $_POST['categories_id']);
      $categories_id = $_POST['categories_id'];
      if (zen_get_category_metatags_keywords($categories_id, (int)$_SESSION['languages_id']) or zen_get_category_metatags_description($categories_id, (int)$_SESSION['languages_id'])) {
        $action = 'update_category_meta_tags';
      } else {
        $action = 'insert_categories_meta_tags';
      }

      $languages = zen_get_languages();
      for ($i=0, $n=sizeof($languages); $i<$n; $i++) {
        $language_id = $languages[$i]['id'];

        $sql_data_array = array('metatags_title' => zen_db_prepare_input($_POST['metatags_title'][$language_id]),
                                'metatags_keywords' => zen_db_prepare_input($_POST['metatags_keywords'][$language_id]),
                                'metatags_description' => zen_db_prepare_input($_POST['metatags_description'][$language_id]));

        if ($action == 'insert_categories_meta_tags') {
          $insert_sql_data = array('categories_id' => $categories_id,
                                   'language_id' => $language_id);

          $sql_data_array = array_merge($sql_data_array, $insert_sql_data);

          zen_db_perform(TABLE_METATAGS_CATEGORIES_DESCRIPTION, $sql_data_array);
        } elseif ($action == 'update_category_meta_tags') {
          zen_db_perform(TABLE_METATAGS_CATEGORIES_DESCRIPTION, $sql_data_array, 'update', "categories_id = '" . (int)$categories_id . "' and language_id = '" . (int)$language_id . "'");
        }
      }

      zen_redirect(zen_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&cID=' . $categories_id));
      break;
      // eof: categories meta tags
この部分のinsertとupdateの分岐がまずいです。
コード:
if (zen_get_category_metatags_keywords($categories_id, (int)$_SESSION['languages_id']) or zen_get_category_metatags_description($categories_id, (int)$_SESSION['languages_id'])) {
        $action = 'update_category_meta_tags';
      } else {
        $action = 'insert_categories_meta_tags';
      }
このように「キーワード」と「ディスクリプション」の有無だけで分岐しています。
「空欄」のままで登録した場合もTABLE_METATAGS_CATEGORIES_DESCRIPTIONに該当カテゴリが登録されますので、上記のようなフィールドの有無のみで判定してしまうと空欄がある状態で登録されたカテゴリに対してもinsertに分岐してしまいます。
言語ごとに判定しないのもまずいです。(デフォルトでは管理画面の表示言語でしか判定していない。)

対策は「空欄での登録をNGにする」か「判定をTABLE_METATAGS_CATEGORIES_DESCRIPTIONにカテゴリが登録されているか否かで行う」ようにすれば良いです。(言語ごとに行わなければいけません)

私はこんなふうに変更しました。
コード:
      // bof: categories meta tags
      case 'update_category_meta_tags':
      // add or update meta tags
      //die('I SEE ' . $action . ' - ' . $_POST['categories_id']);
      $categories_id = $_POST['categories_id'];

/*
* バグ対応
*/

      $languages = zen_get_languages();
      for ($i=0, $n=sizeof($languages); $i<$n; $i++) {
        $language_id = $languages[$i]['id'];

        $sql_data_array = array('metatags_title' => zen_db_prepare_input($_POST['metatags_title'][$language_id]),
                                'metatags_keywords' => zen_db_prepare_input($_POST['metatags_keywords'][$language_id]),
                                'metatags_description' => zen_db_prepare_input($_POST['metatags_description'][$language_id]));

      $check_sql_data_array = $db->Execute("select categories_id from ".TABLE_METATAGS_CATEGORIES_DESCRIPTION." where language_id = '".$language_id."' and categories_id = '".$categories_id."' ");
      $check_cat = $check_sql_data_array->fields['categories_id'];

      if($check_cat){
         $action = 'update_category_meta_tags';
      }else{
         $action = 'insert_categories_meta_tags';
      }
      
        if ($action == 'insert_categories_meta_tags') {
          $insert_sql_data = array('categories_id' => $categories_id,
                                   'language_id' => $language_id);

          $sql_data_array = array_merge($sql_data_array, $insert_sql_data);

          zen_db_perform(TABLE_METATAGS_CATEGORIES_DESCRIPTION, $sql_data_array);
        } elseif ($action == 'update_category_meta_tags') {
          zen_db_perform(TABLE_METATAGS_CATEGORIES_DESCRIPTION, $sql_data_array, 'update', "categories_id = '" . (int)$categories_id . "' and language_id = '" . (int)$language_id . "'");
        }
      }

      zen_redirect(zen_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&cID=' . $categories_id));
      break;
      // eof: categories meta tags

冒頭の判定処理を削除し、言語分のループ中に「TABLE_METATAGS_CATEGORIES_DESCRIPTIONに今登録しようとしているカテゴリが登録されているか否かをチェック」するよう書いてあります。

_________________
mmochi@オフィスあんどぷらす [ZenCartカスタマイズ請け負ってます]
えぇ商いどっと混む http://www.a-akinai.com/ (モジュール販売、海外モジュール紹介etc)
ブログ http://www.andplus.net/index.php?blogid=2
オフィスあんどぷらす http://www.andplus.net/
ビジスケ http://www.bijisuke.com/ (コーポレートサイト構築CMSのASP)


この記事をリポートする
トップへ
 プロフィール  
引用付きで返信する  
 記事の件名: Re: 管理画面からキーワードを埋め込む時のエラー
投稿記事Posted: 2008年10月12日(日) 8:37 am 
オフライン
アバター

登録日時: 2006年9月04日(月) 12:53 pm
記事: 314
所在地: 静岡県静岡市
連投すいません、mmochiです。

ついでながら本家のものも調べたら1.3.6から修正されてましたのでこの問題は1.3.8aでは再現しません。

本家の修正と前回投稿の私のコードはほとんど同じでした。。
参考までに本家の修正も記載しておきます。
コード:
      // bof: categories meta tags
      case 'update_category_meta_tags':
      // add or update meta tags
      //die('I SEE ' . $action . ' - ' . $_POST['categories_id']);
      $categories_id = $_POST['categories_id'];
      $languages = zen_get_languages();
      for ($i=0, $n=sizeof($languages); $i<$n; $i++) {
        $language_id = $languages[$i]['id'];
        $check = $db->Execute("select *
                               from " . TABLE_METATAGS_CATEGORIES_DESCRIPTION . "
                               where categories_id = '" . (int)$categories_id . "'
                               and language_id = '" . (int)$language_id . "'");
        if ($check->RecordCount() > 0) {
          $action = 'update_category_meta_tags';
        } else {
          $action = 'insert_categories_meta_tags';
        }

        $sql_data_array = array('metatags_title' => zen_db_prepare_input($_POST['metatags_title'][$language_id]),
                                'metatags_keywords' => zen_db_prepare_input($_POST['metatags_keywords'][$language_id]),
                                'metatags_description' => zen_db_prepare_input($_POST['metatags_description'][$language_id]));

        if ($action == 'insert_categories_meta_tags') {
          $insert_sql_data = array('categories_id' => $categories_id,
                                   'language_id' => $language_id);
          $sql_data_array = array_merge($sql_data_array, $insert_sql_data);

          zen_db_perform(TABLE_METATAGS_CATEGORIES_DESCRIPTION, $sql_data_array);
        } elseif ($action == 'update_category_meta_tags') {
          zen_db_perform(TABLE_METATAGS_CATEGORIES_DESCRIPTION, $sql_data_array, 'update', "categories_id = '" . (int)$categories_id . "' and language_id = '" . (int)$language_id . "'");
        }
      }

      zen_redirect(zen_href_link(FILENAME_CATEGORIES, 'cPath=' . $cPath . '&cID=' . $categories_id));
      break;
      // eof: categories meta tags

本家のようにwhere句で(int)をつけたほうが良いですね。。 :oops:

_________________
mmochi@オフィスあんどぷらす [ZenCartカスタマイズ請け負ってます]
えぇ商いどっと混む http://www.a-akinai.com/ (モジュール販売、海外モジュール紹介etc)
ブログ http://www.andplus.net/index.php?blogid=2
オフィスあんどぷらす http://www.andplus.net/
ビジスケ http://www.bijisuke.com/ (コーポレートサイト構築CMSのASP)


この記事をリポートする
トップへ
 プロフィール  
引用付きで返信する  
 記事の件名: Re: 管理画面からキーワードを埋め込む時のエラー
投稿記事Posted: 2008年10月12日(日) 9:22 pm 
オフライン

登録日時: 2008年5月11日(日) 4:03 pm
記事: 163
所在地: 滋賀県草津市
ありがとうございます。

mmochiさんバージョンでソース丸々入れ替えたら問題なく動作しました。

バグと言うか不親切な設定だったわけですね。

一度開いたら間違いなくメタタグを挿入してから閉じるだろう・・・のような。

僕の場合enter押して罠にはまったのだと思います(^_^;)

_________________
縲懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€彌n激安工具通販
http://www.koto-tool.com
100円の商品でも送料無料
http://www.esco.koto-tool.com
zencart向け擬似ショッピングモール
http://www.affiliate.koto-tool.com

Zen Cart 1.3.0.2-l10n-jp-4
サーバOS: Linux 2.6.22-4-amd64
PHP バージョン: 5.2.0-8
データベース: MySQL 5.0.32
縲懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€懊€鰀


この記事をリポートする
トップへ
 プロフィール  
引用付きで返信する  
 記事の件名: Re: 管理画面からキーワードを埋め込む時のエラー
投稿記事Posted: 2008年10月13日(月) 9:14 am 
オフライン
アバター

登録日時: 2005年9月27日(火) 1:30 pm
記事: 1631
所在地: 大阪府大阪市天王寺区上本町
ほ~。
なるほど^^;
これは知りませんでした><
また一つ勉強になりました><b

_________________
☆☆☆CMS専用高速レンタルサーバー、テンプレート配布、独自SSL、各種決済代行、各種カスタマイズしてます☆☆☆
会社サイト XOOPS&ZOX、Zen Cart、アフェリエイト、マルチサイト
http://www.obitastar.co.jp/
http://server.obitastar.co.jp/
http://template.obitastar.co.jp/
運営サイト(着物) Zen Cart
http://www.online-kimono.jp/


この記事をリポートする
トップへ
 プロフィール  
引用付きで返信する  
期間内表示:  ソート  
新しいトピックを投稿する トピックへ返信する  [ 10 件の記事 ] 

All times are UTC + 9 hours


オンラインデータ

このフォーラムを閲覧中のユーザー: Google [Bot] & ゲスト[2人]


トピック投稿:  可
返信投稿:  可
記事編集: 不可
記事削除: 不可
ファイル添付: 不可

検索:
ページ移動:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Translated to Japanese principally by ocean