HeaL-uno
uno****@heal-*****
2007年 8月 16日 (木) 17:37:02 JST
過去ログをあさっていろいろとやってみたのですが、自己解決できなかったので教えてください。 現在行った作業は以下の通りです。 1.まずは、項目名を決定する 2.Mysqlを開く Pleskを開く→MyDomain→"ドメイン名"→データベース→名称→DB WebAdmin →左のデータベース名称→右側上の「SQL」→コード入力→実行する 3.Mysql文を実行する alter table products_description add products_** ■■; **に項目名を ■■にテーブル項目型を指定 int(**) 数字(4バイト整数±2147483647までの数字) varchar(**) 全角126文字までの文字列 text 長い文字列 int・varcharは必ず最大文字数を指定しないといけません。(最大255) 4.各項目の設定 右側に追加された項目が出来たら基本値設定を行います。 追加した項目の右側鉛筆マークをクリックします。 多言語設定が必要なものは「紹介順序」を「latin1_swedish_ci」にします。 (latin1一番下) データ入力をする際、空白を許可しない場合(入力必須)、空の値(NULL)を「notnull」にします。 5.表示部分の設定(catalog/product_info.phpの修正) ■クエリの取得 $product_info_query = tep_db_query〜を探す(50行目付近) pd.products_name,の後ろに各項目を追加 pd.products_scientific,pd.products_location,pd.products_sex,pd.products_size,pd.products_note, ■表示部分の修正 80行目付近 <?php echo stripslashes($product_info['products_description']); ?> これを探す。(これは商品説明)多言語の場合、"stripslashes〜"が必要な様子。 <?php echo $products_price; ?>(これは価格)これは1言語用の表記? 6.アドミニ画面の修正(admin/categories.phpの修正) ■descriptionを探してそれと同じ要領で項目を追加していく 220行目付近「$sql_data_array」 (多言語のみ?) 260行目付近「$description_query」 320行目付近「$product_query」(#5のクエリの取得をコピってもOK) 330行目付近「$products_** =〜」 520行目付近「$products_** =〜」 540行目付近「$product_query」(#5のクエリの取得をコピってもOK) 560行目付近「$pInfo->」(else以下の方もちゃんと修正すること) 660行目付近「echo tep_draw_hidden_field」 ■表示部分の追加(html) 420行目付近 ○1言語タイプ例 <tr> <td class="main"><?php echo TEXT_PRODUCTS_●●; ?></td> <td class="main"><?php echo tep_draw_separator('pixel_trans.gif', '24', '15') . ' ' . tep_draw_input_field('products_●●', $pInfo->products_●●); ?></td> </tr> ○多言語タイプ例 <!-- Add pluslist START --> <?php for ($i = 0, $n = sizeof($languages); $i < $n; $i++) { ?> <tr> <td class="main"><?php if ($i == 0) echo TEXT_PRODUCTS_●●; ?></td> <td class="main"><?php echo tep_image(DIR_WS_CATALOG_LANGUAGES . $languages[$i]['directory'] . '/images/' . $languages[$i]['image'], $languages[$i]['name']) . ' ' . tep_draw_input_field('products_●●[' . $languages[$i]['id'] . ']', (($products_●●[$languages[$i]['id']]) ? stripslashes($products_●●[$languages[$i]['id']]) : tep_get_products_●●($pInfo->products_id, $languages[$i]['id']))); ?> </td> </tr> <?php } ?> <tr> <td colspan="2"><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td> </tr> <!-- Add pluslist END --> 570行目付近(修正画面?) ○1言語タイプ例 <!-- Add pluslist START --> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td> </tr> <tr> <td class="main"><?php echo $pInfo->products_author; ?></td> </tr> <!-- Add pluslist END --> ○多言語タイプ例 <!-- Add pluslist START --> <tr> <td><?php echo tep_draw_separator('pixel_trans.gif', '1', '10'); ?></td> </tr> <tr> <td class="main"><?php echo tep_image(DIR_WS_CATALOG_IMAGES . $products_image_name, $pInfo->products_●● , SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, 'align="right" hspace="5" vspace="5"') . $pInfo- >products_description; ?></td> </tr> <!-- Add pluslist END --> 7.表示部分の設定(admin/includes/functions/general.phpの修正) 最終行(?>の前) // Add pluslist START function tep_get_products_●●($product_id, $language_id) { $product_query = tep_db_query("select products_●● from " . TABLE_PRODUCTS_DESCRIPTION . " where products_id = '" . $product_id . "' and language_id = '" . $language_id . "'"); $product = tep_db_fetch_array($product_query); return $product['products_●●']; } // ADD pluslist END 8.各言語の表示項目の追加(admin/includes/languages/○○/categories.php) (jp)80行目付近 (en)20行目付近 define('TEXT_PRODUCTS_●●', '項目の説明:'); -------------------------------------------- さて、この状態で、以下のエラーが出ます。 カタログより商品詳細ページを開くと 1054 - Unknown column 'pd.products_●●' in 'field list' select p.products_id, pd.products_●●, pd.products_name, pd.products_description, p.products_model, p.products_quantity, p.products_image, pd.products_url, p.products_price, p.products_tax_class_id, p.products_date_added, p.products_date_available, p.manufacturers_id from products p, products_description pd where p.products_status = '1' and p.products_id = '15' and pd.products_id = p.products_id and pd.language_id = '4' [TEP STOP] さらに、アドミニページを開くと、 1054 - Unknown column 'pd.products_●●' in 'field list' select p.products_id, pd.products_name, pd.products_●●, p.products_quantity, p.products_image, p.products_price, p.products_date_added, p.products_last_modified, p.products_date_available, p.products_status from products p, products_description pd, products_to_categories p2c where p.products_id = pd.products_id and pd.language_id = '4' and p.products_id = p2c.products_id and p2c.categories_id = '1' order by pd.products_name このようなエラーが出ます。 何か設定が足りないということでしょうか??宜しくお願いします。 uno