Posts Tagged phpmyadmin

保護中: zencart:商品項目追加(メーカー名風)

Posted on 日曜日, 11 月 8th, 2009 at 2:56 PM

この投稿はパスワードで保護されています。閲覧するにはパスワードを入力してください:


関連記事

zencart:商品項目追加その2

Posted on 月曜日, 9 月 7th, 2009 at 2:20 PM

商品項目追加・・・・詳細画面にて表示

その他の画面にて表示させる。例えば「新着一覧」。

DBの configuration  を見ると ・・・・こんな感じw

configuration_id  409~492
configuration_title 商品画像を表示 ~ 複数商品の数量欄の有無・表示位置
configuration_key  PRODUCT_NEW_LIST_IMAGE ~ PRODUCT_NEW_LISTING_MULTIPLE_ADD_TO_CART
configuration_value  1101 ~
configuration_description  商品画像を表示しますか? ~ 
configuration_group_id 21
sort_order  1 ~ 25
last_modified  ~ 2007-08-05 23:15:56
date_added  ~ 2007-07-30 23:55:02
use_function
set_function

--------------

追加してみるw 管理画面 「一般設定」「新着商品リストの設定」

configuration_id  未使用であれば、何番でもいいのでしょうw 「600」
configuration_title 表示タイトル
configuration_key 未使用ならば?何でも おk。「PRODUCT_NEW_LIST_●●●」
configuration_value  お好みで。「2101」
configuration_description 表示詳細
configuration_group_id 21 新着一覧は 21なので 「21」
sort_order   表示順番 「26」
その他テキトーw
(おすすめは「22」全商品は「23」)

-------------

INSERT INTO `zen_configuration` (`configuration_id`, `configuration_title`, `configuration_key`, `configuration_value`, `configuration_description`, `configuration_group_id`, `sort_order`, `last_modified`, `date_added`, `use_function`, `set_function`) VALUES ('600', '●●●または●●●の表示', 'PRODUCT_NEW_LIST_●●●', '2101', '●●●を表示しますか?<br />
<br />
・0= off<br />
・1桁目:左か右か<br />
・2・3桁目:(他の表示項目との)ソート順<br />
・4桁目:表示後の改行(br)数<br />', '21', '26', NULL, '2009-09-07 14:39:32', NULL, NULL);

-----------

/modules/pages/products_new/header_php.

p.products_new_up,

----------
/includes/templates/テンプレート/templates/tpl_modules_products_new_listing.
に追加する。

テキトーに・・・・

if (PRODUCT_NEW_LIST_●●● != '0') {
}

if ($disp_sort_order->fields['configuration_key'] == 'PRODUCT_NEW_●●●' ) {
}

------

$before3days = date("Y-m-d.h:i:s",strtotime("-72 hours",time()));

      if (PRODUCT_NEW_LIST_●●●)!= '0'and ($before3days < $products_new->fields['products_date_added'] )){
if($products_new->fields['products_new_up']== "1"){
        $display_products_●●● = '<img src="/includes/templates/テンプレート/images/new_74.gif">';
      } else {
        $display_products_●●●= '<img src="/includes/templates/テンプレート/images/up_54.gif">';
      }
    } else {
        $display_products_●●●= '';
    }

-------------
                $disp_sort_order = $db->Execute("select configuration_key, configuration_value from " . TABLE_CONFIGURATION . " where configuration_group_id='" . $group_id . "' and (configuration_value >= 1000 and configuration_value <= 1999) order by LPAD(configuration_value,11,0)");

関連記事

zencart:UTF-8

Posted on 日曜日, 9 月 6th, 2009 at 5:33 PM

MySQL : 4.1.25
: 5.2.8
Apache : 1.3.41
:1.3.0.2

character set に ujis がなかった。(泣)
レンタルサーバーなのでmy.cnf などは無理そう。。をUTF-8にする。
ぐぐればいろいろ情報があるようで感謝。
インストールする前に
mb-emulator/以外 EUCを全てUTF-8へ変更。zc_install/も admin/も
/includes/classes/db/mysql/query_factory.
36行位に以下を追記
if (version_compare(mysql_get_server_info(), '4.1.0', '>=')) {
            mysql_query('SET NAMES "utf8"', $this->link);}

~~~インストール~~~
管理画面でエラー+ログイン不可(IDとパスは正しいが画面変化なし)

admin側エラー
Fatal error: Call to a member function Execute() on a non-object in /usr/local/www/htdocs/テンプレート/public_html/includes/functions/strict_sessions. on line 66
--対処--
/admin/includes/configure.
77行目辺り
  define('STORE_SESSIONS', 'db'); // leave empty '' for default handler or set to 'db'
を次のようにする。
  define('STORE_SESSIONS', ''); // leave empty '' for default handler or set to 'db'

--エラー非表示・ログイン可能---(同様に店舗側ログインも不可な可能性がある)
-------------------
商品登録時エラー

1062 Duplicate entry '230-1' for key 1
in:
[insert into products_description (products_name, products_description, products_url, products_id, language_id) values ('', '', '', '230', '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.

型番 空白時エラー発生?
-----
MySQL

show character set;

CREATE DATABASE DEFAULT CHARACTER SET ujis;

----------

host--鯖

関連記事

zencart:商品詳細項目追加(newマーク)

Posted on 土曜日, 8 月 29th, 2009 at 7:50 PM

 商品詳細画面にて項目を増やそう。そして
newマークまたはupマークかどちらかを表示し、さらにそのマークは72時間で消えるようにしよう。

新着情報欄に並ぶ商品が再入荷か、新製品か一目でわかるように区別を付けたいw

一定時間new表示

本家でモジュールがあるらしい。。 けど今回は自力でw (最近ちょっと調子に乗ってきたw 自己責任w

考え方は、管理画面の新着リストでマーク設定が(0ではない)ONになっていてさらに商品登録後72時間以内であればマークを表示する。そのマークは商品登録時にnew (1)or up(0)を設定し 1なら newを そうでない0なら up を表示。って感じだな。。マーク設定が(0ならば)OFFなら何も表示しない。

でフィールドを追加。

----------

例えば

追加フィールド products_new_up

ALTER TABLE `products` ADD `products_new_up` TINYINT( 1 ) NOT NULL DEFAULT '1' AFTER `products_qty_box_status` ;

----------

/admin/includes/languages/japanese/product.(日本語ファイル)

-------------

例えば

define('TEXT_NEW_UP', '新製品new又は再入荷品up:');
define('TEXT_PRODUCTS_NEW_UP_ON', 'Newマーク');
define('TEXT_PRODUCTS_NEW_UP_OFF', 'upマーク');
define('TEXT_PRODUCTS_NEW_UP_EDIT','upマークに設定');

-------------

商品タイプのディレクトリ以下にファイルを作ってもおkかのかもしれん。かも。?違うかもw

/admin/includes/modules/product_general/collect_info.
/admin/includes/modules/product/collect_info.

好きな場所に好きなのを追加する。
もちろん追加したフィールドを・・・。

-----------

例えば

                       'products_new_up' => PRODUCTS_NEW_UP,

p.products_new_up,

//これも?wよくわからんがw↓

// products_new_up shows
    if (!isset($pInfo->products_new_up)) $pInfo->products_qty__new_up = PRODUCTS_NEW_UP;
    switch ($pInfo->products_new_up) {
      case '0': $is_products_new_up = false; $not_products_new_up = true; break;
      case '1': $is_products_new_up = true; $not_products_new_up = false; break;
      default: $is_products_new_up = true; $not_products_new_up = false;
    }
///

          <tr>
            <td class="main"><? echo TEXT_NEW_UP; ?></td>
            <td class="main"><? echo zen_draw_separator('pixel_trans.gif', '24', '15') . '&nbsp;' . zen_draw_radio_field('products_new_up', '1', $is_products_new_up) . '&nbsp;' . TEXT_PRODUCTS_NEW_UP_ON . '&nbsp;' . zen_draw_radio_field('products_new_up', '0', $not_products_new_up) . '&nbsp;' . TEXT_PRODUCTS_NEW_UP_OFF . ' ' . ($pInfo->products_new_up == 0 ? '<br /><span class="errorText">' . TEXT_PRODUCTS_NEW_UP_EDIT . '</span>' : ''); ?></td>
          </tr>

-----------

更新内容も編集。

/admin/includes/modules/update_product.

--------------

例えば

                            'products_new_up' => zen_db_prepare_input($_POST['products_new_up']),

 

--------------

/includes/modules/pages/product_info/main_template_vars.

p.products_new_up,

  $products_new_up = $product_info->fields['products_new_up'];

---------------

で あとは必要に応じて  テキトーに編集。

-------------

例えばw

/includes/templates/テンプレート/templates/tpl_product_info_display.

<?
$before3days = date("Y-m-d.h:i:s",strtotime("-72 hours",time()));
  if ($products_new_up == 1 and ($before3days < $products_date_added )) {
echo "<img src='/includes/templates/テンプレート/images/new_74.gif' >\n";
}
elseif ($products_new_up == 0 and ($before3days < $products_date_added ) )
{
echo "<img src='/includes/templates/テンプレート/images/up_54.gif' >\n";
}else {
echo  '';
}
?>

とりあえず現時点では、思うように動いている?ようです。動作保証できません・・・。自己責任。 つづく・・・

関連記事