Jump to content
VJ

Easy Populate & Products Attributes

Recommended Posts

Hi guys,

 

i'm planning to install easy populate on my store, but really don't know wich version should i get..

 

i read alot of messages here and saw a few bugs, but i don't have separete price per customer or other contribs like this installed.

 

Can someone point me wich one to get ??

 

i saw in the contribs download area: DON'T GET THIS, GET THIS, GET XYZ ...

 

so i'm really confused.

 

... Hope to get a quickly answer :D ... have 2,000+ products awaiting :)

 

Fabio

Share this post


Link to post
Share on other sites

hi

 

when ever i try to upload a file none of the products are added to the catalogu and it says:

 

1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use

 

any idea what i can do?

Share this post


Link to post
Share on other sites
hi

 

when ever i try to upload a file none of the products are added to the catalogu and it says:

 

1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use

 

any idea what i can do?

 

What you can do is provide more information about the error :-)

That's not enough if you want us to help you!

Share this post


Link to post
Share on other sites

I have installed EP 2.76 on my computer and it seems fine. When I try to upload EP file I get the following msg:

 

File uploaded.

Temporary filename: C:\www\\tmp\phpBC.tmp

User filename: EP2006Sep02-0012.txt

Size: 730

 

That's fine. However when I tried to upload to my online server, I get the following error msg:

 

Forbidden

 

You don't have permission to access /catalog/admin/easypopulate.php on this server.

 

I tested with stock OSC MS2.2 with EP mod installed only.

 

Below is my setting of the admin/config

 

define('HTTP_SERVER', 'http://www.mysite.com'); // eg, http://localhost - should not be empty for productive servers

define('HTTP_CATALOG_SERVER', 'http://www.mysite.com');

define('HTTPS_CATALOG_SERVER', '');

define('ENABLE_SSL_CATALOG', 'false'); // secure webserver for catalog module

define('DIR_FS_DOCUMENT_ROOT', '/var/www/html/); // where the pages are located on the server

define('DIR_WS_ADMIN', '/catalog/admin/'); // absolute path required

define('DIR_FS_ADMIN', '/var/www/html/catalog/admin/'); // absolute pate required

define('DIR_WS_CATALOG', '/catalog/'); // absolute path required

define('DIR_FS_CATALOG', '/var/www/html/catalog/'); // absolute path required

 

and below is my setting of temp folder in easypopulate.php:

 

$tempdir = "/eStore/temp/";

$tempdir2 = "/eStore/temp/";

 

Please help!

 

 

Chris

Share this post


Link to post
Share on other sites
I have installed EP 2.76 on my computer and it seems fine. When I try to upload EP file I get the following msg:

 

File uploaded.

Temporary filename: C:\www\\tmp\phpBC.tmp

User filename: EP2006Sep02-0012.txt

Size: 730

 

That's fine. However when I tried to upload to my online server, I get the following error msg:

 

Forbidden

 

You don't have permission to access /catalog/admin/easypopulate.php on this server.

 

I tested with stock OSC MS2.2 with EP mod installed only.

 

Below is my setting of the admin/config

 

define('HTTP_SERVER', 'http://www.mysite.com'); // eg, http://localhost - should not be empty for productive servers

define('HTTP_CATALOG_SERVER', 'http://www.mysite.com');

define('HTTPS_CATALOG_SERVER', '');

define('ENABLE_SSL_CATALOG', 'false'); // secure webserver for catalog module

define('DIR_FS_DOCUMENT_ROOT', '/var/www/html/); // where the pages are located on the server

define('DIR_WS_ADMIN', '/catalog/admin/'); // absolute path required

define('DIR_FS_ADMIN', '/var/www/html/catalog/admin/'); // absolute pate required

define('DIR_WS_CATALOG', '/catalog/'); // absolute path required

define('DIR_FS_CATALOG', '/var/www/html/catalog/'); // absolute path required

 

and below is my setting of temp folder in easypopulate.php:

 

$tempdir = "/eStore/temp/";

$tempdir2 = "/eStore/temp/";

 

Please help!

Chris

 

I think you need to seriously focus on your configure.php files, and work on a server, not in local

Share this post


Link to post
Share on other sites
What you can do is provide more information about the error :-)

That's not enough if you want us to help you!

 

 

All i get is this

 

Updated

1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 's right on the dot. Contact your MAC supplier for information on headset com' at line 11

 

INSERT INTO products_description (products_id, language_id, products_name, products_description, products_url) VALUES ( '149', 1, 'PLANTRONICS Audio 90 Headset', '

 

the "right on the dot. Contact your MAC supplier for information on headset" is actually from my item description :blink:

Share this post


Link to post
Share on other sites

Hi Everyone

Im having problems with EP when trying to generate a file to download from my OsC database. Im running a large store, with something like 2000 products (that i uploaded using EP). I?ve already increased set_time_limit(), it really increased the time it takes to execute the script (im on a shared server but with safe_mode off) but finally, it fails with no errors, i just get a blank page. EP version is 2.76c-MS2. Any solution??

 

Thanks in advance,

 

Sebastian

Share this post


Link to post
Share on other sites

hi i completely reinstalled oscommerce and EP although whenever i try to upload a file i get this message

 

Filename: new.txt
1054 - Unknown column 'p.products_image_med' in 'field list'

SELECT p.products_id as v_products_id, p.products_model as v_products_model, p.products_image as v_products_image, p.products_image_med as v_products_image_med, p.products_image_lrg as v_products_image_lrg, p.products_image_sm_1 as v_products_image_sm_1, p.products_image_xl_1 as v_products_image_xl_1, p.products_image_sm_2 as v_products_image_sm_2, p.products_image_xl_2 as v_products_image_xl_2, p.products_image_sm_3 as v_products_image_sm_3, p.products_image_xl_3 as v_products_image_xl_3, p.products_image_sm_4 as v_products_image_sm_4, p.products_image_xl_4 as v_products_image_xl_4, p.products_image_sm_5 as v_products_image_sm_5, p.products_image_xl_5 as v_products_image_xl_5, p.products_image_sm_6 as v_products_image_sm_6, p.products_image_xl_6 as v_products_image_xl_6, p.products_price as v_products_price, p.products_weight as v_products_weight, p.products_date_added as v_date_avail, p.products_tax_class_id as v_tax_class_id, p.products_quantity as v_products_quantity, p.manufacturers_id as v_manufacturers_id, subc.categories_id as v_categories_id FROM products as p, categories as subc, products_to_categories as ptoc WHERE p.products_id = ptoc.products_id AND p.products_model = '1' AND ptoc.categories_id = subc.categories_id

[TEP STOP]

Share this post


Link to post
Share on other sites

It is probably because the EP uses extra image fields that you don;t have installed.

you need to comment these fields in the EP file to make them inactive.

Share this post


Link to post
Share on other sites

i tried to do what you said although i know very little about php, how do i comment these fields and what fields are they? I even reinstalled oscommerce and EP but still get the same error

Share this post


Link to post
Share on other sites
i tried to do what you said although i know very little about php, how do i comment these fields and what fields are they? I even reinstalled oscommerce and EP but still get the same error

 

send me your file, I'll take a look at it (I sent you my email in PM)

Share this post


Link to post
Share on other sites

I have set up a localhost site from scratch and installed a few other needed contributions. The last one I did was EasyPopulate and it went well. The only thing is that when I go to Admin, it doesn't do anything.

 

I have added 2 items to one catagory and tried to download a full db to edit but it doesn't do ANYTHING. I have also tried to upload my db from my live site but it doesn't work either.

 

The temp folder is in catalog and I cannot make it 777 for some reason either. I have tried several methods including going into DOS and trying to force the attribute but it remains Read Only. Anyone have any ideas on this?

 

What could the problem be???

 

I have gone over the installation step by step to confirm I didn't miss anything.

 

Thanks

 

Kelvin

Share this post


Link to post
Share on other sites

I just installed Easy Populate 2.90b and I'm having problems with the tab delimited, this is what I get in my downloaded file.

 

v_products_modelEP_DELIMITERv_products_imageEP_DELIMITERv_products_name_1EP_DELI

MITERv_products_description_1EP_DELIMITERv_products_url_1EP_DELIMITERv_products_n

ame_2EP_DELIMITERv_products_description_2EP_DELIMITERv_products_url_2EP_DELIMITER

v_products_name_3EP_DELIMITERv_products_description_3EP_DELIMITERv_products_url_3

EP_DELIMITERv_products_priceEP_DELIMITERv_products_price1_qtyEP_DELIMITERv_produc

ts_price1EP_DELIMITERv_products_price2_qtyEP_DELIMITERv_products_price2EP_DELIMIT

ERv_products_price3_qtyEP_DELIMITERv_products_price3EP_DELIMITERv_products_price4

_qtyEP_DELIMITERv_products_price4EP_DELIMITERv_products_price5_qtyEP_DELIMITERv_p

roducts_price5EP_DELIMITERv_products_price6_qtyEP_DELIMITERv_products_price6EP_DE

LIMITERv_products_price7_qtyEP_DELIMITERv_products_price7EP_DELIMITERv_products_p

rice8_qtyEP_DELIMITERv_products_price8EP_DELIMITERv_products_qty_blocksEP_DELIMIT

ERv_products_weightEP_DELIMITERv_date_availEP_DELIMITERv_date_addedEP_DELIMITERv_

products_quantityEP_DELIMITERv_manufacturers_nameEP_DELIMITERv_tax_class_titleEP_

DELIMITERv_statusEP_DELIMITEEP_DELIMITEREOREOR

LTMouse001EP_DELIMITEREP_DELIMITERCordless MouseEP_DELIMITERMouse!EP_DELIMITEREP_DELIMITEREP_DELIMITEREP_DELIMITEREP_DELIMITEREP_DELIMITEREP_D

ELIMITEREP_DELIMITER31EP_DELIMITER0EP_DELIMITER0.0000EP_DELIMITER0EP_DELIMITER0.0

000EP_DELIMITER0EP_DELIMITER0.0000EP_DELIMITER0EP_DELIMITER0.0000EP_DELIMITER0EP_

DELIMITER0.0000EP_DELIMITER0EP_DELIMITER0.0000EP_DELIMITER0EP_DELIMITER0.0000EP_D

ELIMITER0EP_DELIMITER0.0000EP_DELIMITER1EP_DELIMITER0.00EP_DELIMITEREP_DELIMITER2

006-08-27 05:27:56EP_DELIMITER100EP_DELIMITERLogitechEP_DELIMITERTaxable ItemsEP_DELIMITEREP_STATUS_ACTIVEEP_DELIMITEEP_DELIMITEREOREOR

 

I'm also getting this in my Admin -> Easy Populate:

 

Import catalog's file from directory EP_TEMP_DIR :

 

Creation catalog's and Froogle's file in the directory EP_TEMP_DIR :

 

 

These are the contributions I've installed:

-Separate Price Per Customer v4.1.5

-Separate Price Per Customer Price Break v1.02

-Extra Fields v2.0j

-Protection of Configuration v1.1

-Prevent Multiply Clicks on checkout Confirmation

-Center Shop CSS ms2

-REGISTER GLOBALS v1.4a

-Quantity Box in Product Listing

 

Here is my easypopulate.php

 

<?php

 

// Current EP Version

$curver = '2.90';

 

/*

$Id: easypopulate.php,v 2.90 2006/04/14 Davide Duca @ www.eurobigstore.com

 

*/

 

require('includes/application_top.php');

 

// >>> BEGIN REGISTER_GLOBALS

link_get_variable('download');

link_get_variable('dltype');

link_get_variable('split');

 

link_post_variable('MAX_FILE_SIZE');

link_post_variable('buttoninsert');

link_post_variable('buttonsplit');

link_post_variable('localfile');

 

// WARNING: I'm not sure about this line - maybe this is why 'Upload EP File' doesn't work

link_post_variable('usrfl');

// <<< END REGISTER_GLOABLS

 

//**** File Splitting Configuration ****

// we attempt to set the timeout limit longer for this script to avoid having to split the files

// NOTE: If your server is running in safe mode, this setting cannot override the timeout set in php.ini

if (EP_SET_TIME_LIMIT == 'true') {set_time_limit(330);}

 

//**** Size of products_model in products table ****

// This is automatically set to the maximum defined size of products_model in the products table. We check to make sure all models are no longer than this value.

global $modelsize;

$table_definition_query=tep_db_query("describe " . TABLE_PRODUCTS);

while ($product_definition=tep_db_fetch_array($table_definition_query)){

if ($product_definition[Field]=='products_model'){

if (substr($product_definition[Type],0,7)=='varchar'){

$modelsize=substr($product_definition[Type],8,strlen($product_definition[Type]));

$modelsize=substr($modelsize,0,(strlen($modelsize)-1));

}

}

}

//**** Price includes tax? ****

global $price_with_tax;

$price_with_tax = (EP_PRICE_INC_TAX =='true' ? 1 : 0);

 

global $separator;

if (EP_DELIMITER == '\t') {

$separator = "\t"; // oscommerce stores escaped delimeters in mySQL as a string and not an actual tab.

} else {

$separator = EP_DELIMITER;

}

 

// change this if you want to download selected product options

// this might be handy, if you have a lot of product options, and your output file exceeds 256 columns (which is the max. limit MS Excel is able to handle)

global $attribute_options_select;

//$attribute_options_select = array('Size', 'Model'); // uncomment and fill with product options name you wish to download // comment this line, if you wish to download all product options

// VJ product attributes end

 

//*******************************

// If you are running a pre-Nov1-2002 snapshot of OSC, then we need this include line to avoid

// errors like:

// undefined function tep_get_uploaded_file

if (!function_exists(tep_get_uploaded_file)){

include (DIR_WS_FUNCTIONS . 'easypopulate_functions.php');

}

//*******************************

 

// VJ product attributes begin

global $attribute_options_array;

$attribute_options_array = array();

 

if (EP_PROD_ATTR == 'true') {

if (is_array($attribute_options_select) && (count($attribute_options_select) > 0)) {

foreach ($attribute_options_select as $value) {

$attribute_options_query = "select distinct products_options_id from " . TABLE_PRODUCTS_OPTIONS . " where products_options_name = '" . $value . "'";

 

$attribute_options_values = tep_db_query($attribute_options_query);

 

if ($attribute_options = tep_db_fetch_array($attribute_options_values)){

$attribute_options_array[] = array('products_options_id' => $attribute_options['products_options_id']);

}

}

} else {

$attribute_options_query = "select distinct products_options_id from " . TABLE_PRODUCTS_OPTIONS . " order by products_options_id";

 

$attribute_options_values = tep_db_query($attribute_options_query);

 

while ($attribute_options = tep_db_fetch_array($attribute_options_values)){

$attribute_options_array[] = array('products_options_id' => $attribute_options['products_options_id']);

}

}

}

// VJ product attributes end

 

global $filelayout, $filelayout_count, $filelayout_sql, $langcode, $fileheaders;

 

// these are the fields that will be defaulted to the current values in the database if they are not found in the incoming file

global $default_these;

$default_these = array(

'v_products_image',

#'v_products_dim_type',

#'v_products_length',

#'v_products_width',

#'v_products_height',

#'v_products_mimage',

#'v_products_bimage',

#'v_products_subimage1',

#'v_products_bsubimage1',

#'v_products_subimage2',

#'v_products_bsubimage2',

#'v_products_subimage3',

'v_categories_id',

'v_specials_price',

'v_specials_date_avail',

'v_specials_expires_date',

'v_products_price',

'products_price1',

'products_price2',

'products_price3',

'products_price4',

'products_price5',

'products_price6',

'products_price7',

'products_price8',

'products_price1_qty',

'products_price2_qty',

'products_price3_qty',

'products_price4_qty',

'products_price5_qty',

'products_price6_qty',

'products_price7_qty',

'products_price8_qty',

'products_qty_blocks',

'v_products_quantity',

'v_products_weight',

'v_date_avail',

'v_instock',

'v_tax_class_title',

'v_manufacturers_name',

'v_manufacturers_id',

'v_products_dim_type',

'v_products_length',

'v_products_width',

'v_products_height',

);

 

//elari check default language_id from configuration table DEFAULT_LANGUAGE

$epdlanguage_query = tep_db_query("select languages_id, name from " . TABLE_LANGUAGES . " where code = '" . DEFAULT_LANGUAGE . "'");

if (tep_db_num_rows($epdlanguage_query)) {

$epdlanguage = tep_db_fetch_array($epdlanguage_query);

$epdlanguage_id = $epdlanguage['languages_id'];

$epdlanguage_name = $epdlanguage['name'];

} else {

Echo 'Strange but there is no default language to work... That may not happen, just in case... ';

}

 

$langcode = ep_get_languages();

 

if ( $dltype != '' ){

// if dltype is set, then create the filelayout. Otherwise it gets read from the uploaded file

ep_create_filelayout($dltype); // get the right filelayout for this download

}

 

//*******************************

// E N D

// INITIALIZATION

//*******************************

 

//*******************************

// inactivated ALL PRODUCTS' STATUS

// added function for those who dont have discontinue product list from supplier

// by Tommy vo - voqhung@hotmail.com

//*******************************

if ( $inactivated == 1){

$result = ep_query('UPDATE products SET products_status=0;');

}

 

//*******************************

// DOWNLOAD FILE

//*******************************

if ( $download == 'stream' or $download == 'tempfile' ){

$filestring = ""; // this holds the csv file we want to download

$result = tep_db_query($filelayout_sql);

$row = tep_db_fetch_array($result);

 

//SETUP ATTRIBUTES ARRAY

if (EP_USE_AO == 'true') {

$attribute_values_sql = "select products_id, options_id, options_values_id, options_values_price, price_prefix from " . TABLE_PRODUCTS_ATTRIBUTES . " ORDER BY products_attributes_id";

$attributes_query= tep_db_query($attribute_values_sql);

$attributes_array=array();

while($row_attributes= tep_db_fetch_array($attributes_query)){

$attributes_array[$row_attributes["products_id"]."_".$row_attributes["options_id"]."_".$row_attributes["options_values_id"]]=array("products_id"=>$row_attributes["products_id"],

"options_id"=>$row_attributes["options_id"],

"options_values_id"=>$row_attributes["options_values_id"],

"options_values_price"=>$row_attributes["options_values_price"],

"price_prefix"=>$row_attributes["price_prefix"]

);

}

$attributes_values_sql= "select products_options_values_id, products_options_values_name, language_id from " . TABLE_PRODUCTS_OPTIONS_VALUES;

$attributes_values_query = tep_db_query($attributes_values_sql);

$attributes_values_array=array();

while($row_attributes_values= tep_db_fetch_array($attributes_values_query)){

$attributes_values_array[$row_attributes_values["products_options_values_id"]."_".$row_attributes_values["language_id"]]=array("products_options_values_id"=>$row_attributes_values["products_options_values_id"],

"products_options_values_name"=>$row_attributes_values["products_options_values_name"]

);

}

$attribute_options_lang_sql= "select products_options_id, products_options_name, language_id from " . TABLE_PRODUCTS_OPTIONS;

$attribute_options_lang_query = tep_db_query($attribute_options_lang_sql);

$attribute_options_lang_array=array();

while($row_attributes_lang= tep_db_fetch_array($attribute_options_lang_query)){

$attribute_options_lang_array[$row_attributes_lang["products_options_id"]."_".$row_attributes_lang["language_id"]]=array("products_options_id"=>$row_attributes_lang["products_options_id"],

"products_options_name"=>$row_attributes_lang["products_options_name"]

);

}

} else {

}

// END SETUP ATTRIBUTES ARRAY

 

// Here we need to allow for the mapping of internal field names to external field names

// default to all headers named like the internal ones

// the field mapping array only needs to cover those fields that need to have their name changed

if ( count($fileheaders) != 0 ){

$filelayout_header = $fileheaders; // if they gave us fileheaders for the dl, then use them

} else {

$filelayout_header = $filelayout; // if no mapping was spec'd use the internal field names for header names

}

//We prepare the table heading with layout values

foreach( $filelayout_header as $key => $value ){

$filestring .= $key . $separator;

}

// now lop off the trailing tab

$filestring = substr($filestring, 0, strlen($filestring)-1);

 

// set the type

if ( $dltype == 'froogle' ){

$endofrow = "\n";

} else {

// default to normal end of row

$endofrow = $separator . 'EOREOR' . "\n";

}

$filestring .= $endofrow;

 

$num_of_langs = count($langcode);

while ($row){

 

 

// if the filelayout says we need a products_name, get it

// build the long full froogle image path

$row['v_products_fullpath_image'] = EP_FROOGLE_IMG . $row['v_products_image'];

// Other froogle defaults go here for now

$row['v_froogle_instock'] = 'Y';

$row['v_froogle_shipping'] = '';

$row['v_froogle_upc'] = '';

$row['v_froogle_color'] = '';

$row['v_froogle_size'] = '';

$row['v_froogle_quantitylevel'] = '';

$row['v_froogle_manufacturer_id'] = '';

$row['v_froogle_exp_date'] = '';

$row['v_froogle_product_type'] = 'OTHER';

$row['v_froogle_delete'] = '';

$row['v_froogle_currency'] = 'EUR';

$row['v_froogle_offer_id'] = $row['v_products_model'];

$row['v_froogle_product_id'] = $row['v_products_model'];

 

// names and descriptions require that we loop thru all languages that are turned on in the store

foreach ($langcode as $key => $lang){

$lid = $lang['id'];

 

// for each language, get the description and set the vals

$sql2 = "SELECT *

FROM ".TABLE_PRODUCTS_DESCRIPTION."

WHERE

products_id = " . $row['v_products_id'] . " AND

language_id = '" . $lid . "'

";

$result2 = tep_db_query($sql2);

$row2 = tep_db_fetch_array($result2);

 

// I'm only doing this for the first language, since right now froogle is US only.. Fix later!

// adding url for froogle, but it should be available no matter what

if (EP_SEF_URLS == 'true'){

// if only one language

if ($num_of_langs == 1){

$row['v_froogle_products_url_' . $lid] = EP_FROOGLE_PROD . '/products_id/' . $row['v_products_id'];

} else {

$row['v_froogle_products_url_' . $lid] = EP_FROOGLE_PROD . '/products_id/' . $row['v_products_id'] . '/language/' . $lid;

}

} else {

if ($num_of_langs == 1){

$row['v_froogle_products_url_' . $lid] = EP_FROOGLE_PROD . '?products_id=' . $row['v_products_id'];

} else {

$row['v_froogle_products_url_' . $lid] = EP_FROOGLE_PROD . '?products_id=' . $row['v_products_id'] . '&language=' . $lid;

}

}

 

$row['v_products_name_' . $lid] = $row2['products_name'];

$row['v_products_description_' . $lid] = $row2['products_description'];

$row['v_products_url_' . $lid] = $row2['products_url'];

 

// froogle advanced format needs the quotes around the name and desc

$row['v_froogle_products_name_' . $lid] = '"' . strip_tags(str_replace('"','""',$row2['products_name'])) . '"';

$row['v_froogle_products_description_' . $lid] = '"' . strip_tags(str_replace('"','""',$row2['products_description'])) . '"';

 

// support for Linda's Header Controller 2.0 here

if(isset($filelayout['v_products_head_title_tag_' . $lid])){

$row['v_products_head_title_tag_' . $lid] = $row2['products_head_title_tag'];

$row['v_products_head_desc_tag_' . $lid] = $row2['products_head_desc_tag'];

$row['v_products_head_keywords_tag_' . $lid] = $row2['products_head_keywords_tag'];

}

// end support for Header Controller 2.0

}

 

// for the categories, we need to keep looping until we find the root category

 

// start with v_categories_id

// Get the category description

// set the appropriate variable name

// if parent_id is not null, then follow it up.

// we'll populate an aray first, then decide where it goes in the

$thecategory_id = $row['v_categories_id'];

$fullcategory = ''; // this will have the entire category stack for froogle

for( $categorylevel=1; $categorylevel<EP_MAX_CAT+1; $categorylevel++){

if ($thecategory_id){

$sql2 = "SELECT categories_name

FROM ".TABLE_CATEGORIES_DESCRIPTION."

WHERE

categories_id = " . $thecategory_id . " AND

language_id = " . $epdlanguage_id;

 

$result2 = tep_db_query($sql2);

$row2 = tep_db_fetch_array($result2);

// only set it if we found something

$temprow['v_categories_name_' . $categorylevel] = $row2['categories_name'];

// now get the parent ID if there was one

$sql3 = "SELECT parent_id

FROM ".TABLE_CATEGORIES."

WHERE

categories_id = " . $thecategory_id;

$result3 = tep_db_query($sql3);

$row3 = tep_db_fetch_array($result3);

$theparent_id = $row3['parent_id'];

if ($theparent_id != ''){

// there was a parent ID, lets set thecategoryid to get the next level

$thecategory_id = $theparent_id;

} else {

// we have found the top level category for this item,

$thecategory_id = false;

}

//$fullcategory .= " > " . $row2['categories_name'];

$fullcategory = $row2['categories_name'] . " > " . $fullcategory;

} else {

$temprow['v_categories_name_' . $categorylevel] = '';

}

}

// now trim off the last ">" from the category stack

$row['v_category_fullpath'] = substr($fullcategory,0,strlen($fullcategory)-3);

 

// temprow has the old style low to high level categories.

$newlevel = 1;

// let's turn them into high to low level categories

for( $categorylevel=6; $categorylevel>0; $categorylevel--){

if ($temprow['v_categories_name_' . $categorylevel] != ''){

$row['v_categories_name_' . $newlevel++] = $temprow['v_categories_name_' . $categorylevel];

}

}

// if the filelayout says we need a manufacturers name, get it

if (isset($filelayout['v_manufacturers_name'])){

if ($row['v_manufacturers_id'] != ''){

$sql2 = "SELECT manufacturers_name

FROM ".TABLE_MANUFACTURERS."

WHERE

manufacturers_id = " . $row['v_manufacturers_id']

;

$result2 = tep_db_query($sql2);

$row2 = tep_db_fetch_array($result2);

$row['v_manufacturers_name'] = $row2['manufacturers_name'];

}

}

// If you have other modules that need to be available, put them here

 

// VJ product attribs begin

if (isset($filelayout['v_attribute_options_id_1'])){

$languages = tep_get_languages();

 

$attribute_options_count = 1;

foreach ($attribute_options_array as $attribute_options) {

$row['v_attribute_options_id_' . $attribute_options_count] = $attribute_options['products_options_id'];

 

for ($i=0, $n=sizeof($languages); $i<$n; $i++) {

$lid = $languages[$i]['id'];

if (EP_USE_AO == 'true') {

$attribute_options_languages=$attribute_options_lang_array[(int)$attribute_options['products_options_id']."_".(int)$lid];

} else {

$attribute_options_languages_query = "select products_options_name from " . TABLE_PRODUCTS_OPTIONS . " where products_options_id = '" . (int)$attribute_options['products_options_id'] . "' and language_id = '" . (int)$lid . "'";

$attribute_options_languages_values = tep_db_query($attribute_options_languages_query);

$attribute_options_languages = tep_db_fetch_array($attribute_options_languages_values);

}

$row['v_attribute_options_name_' . $attribute_options_count . '_' . $lid] = $attribute_options_languages['products_options_name'];

}

 

$attribute_values_query = "select products_options_values_id from " . TABLE_PRODUCTS_OPTIONS_VALUES_TO_PRODUCTS_OPTIONS . " where products_options_id = '" . (int)$attribute_options['products_options_id'] . "' order by products_options_values_id";

 

$attribute_values_values = tep_db_query($attribute_values_query);

 

$attribute_values_count = 1;

while ($attribute_values = tep_db_fetch_array($attribute_values_values)) {

$row['v_attribute_values_id_' . $attribute_options_count . '_' . $attribute_values_count] = $attribute_values['products_options_values_id'];

if (EP_USE_AO == 'true') {

$attribute_values_price=$attributes_array[(int)$row['v_products_id']."_".(int)$attribute_options['products_options_id']."_".(int)$attribute_values['products_options_values_id']];

&nbs

Share this post


Link to post
Share on other sites

In yoru EP file, look for:

 

global $separator;
if (EP_DELIMITER == '\t') {
 $separator = "\t"; // oscommerce stores escaped delimeters in mySQL as a string and not an actual tab.
} else {
$separator = EP_DELIMITER;
}

 

and above it, add:

 

define (EP_DELIMITER, '\t');

Share this post


Link to post
Share on other sites

WOW! Thanks a bunch! Another question, how do I define this? and where?

 

Import catalog's file from directory EP_TEMP_DIR :

 

Creation catalog's and Froogle's file in the directory EP_TEMP_DIR :

 

thanks again :D

 

In yoru EP file, look for:

 

global $separator;
if (EP_DELIMITER == '\t') {
 $separator = "\t"; // oscommerce stores escaped delimeters in mySQL as a string and not an actual tab.
} else {
$separator = EP_DELIMITER;
}

 

and above it, add:

 

define (EP_DELIMITER, '\t');

Share this post


Link to post
Share on other sites
WOW! Thanks a bunch! Another question, how do I define this? and where?

thanks again :D

 

 

Import catalog's file from directory EP_TEMP_DIR :

 

regarding this, you probably forgot to ulpload the language file of easypopulate. (read the instaructions again)

 

in admin>includes>languages>english

 

you should have a file called easypopulate.php that looks like:

 

<?php
/*
$Id: easypolulate.php,v 2.77-MS2 2005/12/27 23:25:41 hpdl Exp $

Traduzione Italiana ripresa rielaborata
e corretta da Davide Duca info@itmonza.com 
Bankia Sofia Bulgaria 27/12/2005 00.03.14
Rilasciata sotto GNU General Public License
*/

define('HEADING_TITLE_EP', 'Catalog Batch Import & Export ( <a href="http://www.oscommerce.com/community/contributions,500" target="_blank">Contribution</a> ; <a href="http://forums.oscommerce.com/index.php?showtopic=162244" target="_blank">Forum</a>  ) ');
define('DEFAUL_LANGUAGE_EP', 'Default language:');
define('IMPORT_EP', 'Import catalog\'s file:');
define('SPLIT_EP', 'Split catalog\'s file big dimension:');
define('IMPORT_TMP_EP', 'Import catalog\'s file from directory ');
define('DOWNLOAD_EP', 'Export and download catalog\'s and Froogle\'s file:');
define('DOWNLOAD_EP_2', 'Download .txt file with TAB delimited to edit ');
define('COMPLETE_EP', '( Complete ) ');
define('MODEL_PRICE_QUANTITY_EP', '( SKU / Price / Quantity ) ');
define('MODEL_CATEGORY_EP', '( SKU / Category ) ');
define('METATAGS_CATEGORY_EP', '( Categories / Metatags ) ');
define('MODEL_CATEGORY_EP', '( SKU / Category ) ');
define('FROOGLE_EP', '( Froogle ) ');
define('CREATE_EP', 'Creation catalog\'s and Froogle\'s file in the directory ');
define('CREATE_EP_2', 'Creation file .txt file with TAB delimited ');
define('MODEL_ATTRIBUTES_EP', '( SKU / Attributes ) ');
define('EXTRA_FIELD_EP', '( Products extra fields ) ' );
define('FILE_UPLOAD_EP', 'File uploaded.' );
define('TEMPORARY_FILENAME_EP', 'Temporary filename: ' );
define('USER_FILENAME_EP', 'User filename: ' );
define('SIZE_EP', 'Size: ' );
define('DELETE_EP', ' Deleted' );
define('UPDATE_EP', ' Updated' );
define('ERROR_EP', 'ERROR - v_customer_group_id and v_customer_price must occur in pairs.' );
define('NO_NEW_PRODUCT_EP', 'No products_SKU field in record. This line was not imported.' );
define('NEW_PRODUCT_EP', ' !New Product!' );
define('INSERED_EP', ' Insered' );
define('EP_TEMP_DIR', 'tmp/' );
?>

 

you will notice that the EP_TEMP_DIR is the last line

don't forget to create a directory called tmp in your catalog root and CHMOD it to 777

Share this post


Link to post
Share on other sites

I am starting to use oscommerce 2.2ms2 and have installed a few contribs so far and done a few modifications myself. I have read back a little into this thread but it's huge! I would like to know which version of EP to install and if there are any modifications I will need to make.

 

Please, can someone help me?

 

Thanks,

 

Richy

Share this post


Link to post
Share on other sites
I am starting to use oscommerce 2.2ms2 and have installed a few contribs so far and done a few modifications myself. I have read back a little into this thread but it's huge! I would like to know which version of EP to install and if there are any modifications I will need to make.

 

Please, can someone help me?

 

Thanks,

 

Richy

 

I really depends on what mods you have installed. I use myself a 3.0 without any problems, but had to modify it for my mods (customs metatags and more pics). Customizing it is not to difficult is not too difficult if you understand the oscommerce logic, but can be challenging if you are a beginner.

Share this post


Link to post
Share on other sites
I really depends on what mods you have installed. I use myself a 3.0 without any problems, but had to modify it for my mods (customs metatags and more pics). Customizing it is not to difficult is not too difficult if you understand the oscommerce logic, but can be challenging if you are a beginner.

 

Yes I have found some of it easy and some of it hard. I only started with this about a weekago but have managed to get it working with the ipn 3.1.5 and a few other contribs. I am still a long way off having all the features I need for this shop so envisage a long haul to the end (will it ever end? who knows for sure).

 

I will have been adding my products using the admin which, to be honest, is not all that bad. It takes a long time but it gets the job done.

 

I would like to be able to show more pics too.. like have 1 large and 2 small which are switchable with a click on a smaller one. What meta tags modifications have you made?

 

Thanks for your reply, I hope you get back to me again. :)

 

Richy

Edited by psynaptic

Share this post


Link to post
Share on other sites
Yes I have found some of it easy and some of it hard. I only started with this about a weekago but have managed to get it working with the ipn 3.1.5 and a few other contribs. I am still a long way off having all the features I need for this shop so envisage a long haul to the end (will it ever end? who knows for sure).

 

I will have been adding my products using the admin which, to be honest, is not all that bad. It takes a long time but it gets the job done.

 

I would like to be able to show more pics too.. like have 1 large and 2 small which are switchable with a click on a smaller one. What meta tags modifications have you made?

 

Thanks for your reply, I hope you get back to me again. :)

 

Richy

 

For the custom meta tags:

http://www.oscommerce.com/community/contributions,3726/

 

For more pics:

http://www.oscommerce.com/community/contributions,1611/

 

and the EP 3.0 version that I uploaded on 21 Apr 2006 is made for these 2 previous mods

http://www.oscommerce.com/community/contributions,500/

Share this post


Link to post
Share on other sites

Share this post


Link to post
Share on other sites
I have set up a localhost site from scratch and installed a few other needed contributions. The last one I did was EasyPopulate and it went well. The only thing is that when I go to Admin, it doesn't do anything.

 

I have added 2 items to one catagory and tried to download a full db to edit but it doesn't do ANYTHING. I have also tried to upload my db from my live site but it doesn't work either.

 

The temp folder is in catalog and I cannot make it 777 for some reason either. I have tried several methods including going into DOS and trying to force the attribute but it remains Read Only. Anyone have any ideas on this?

 

What could the problem be???

 

I have gone over the installation step by step to confirm I didn't miss anything.

 

Thanks

 

Kelvin

 

Still having troubles with this one. Can anyone help me?

 

Thanks

 

Kelvin

Share this post


Link to post
Share on other sites

I'm running into trouble. As you've probably heard before, "I'm certain I haven't changed anything" on my modified version of EasyPopulate 3.00 since it was last working.

 

When I try to "Download Complete tab-delimited" or "Create Complete tab-delimited" files, instead of the previous successful behavior, I'm prompted to save the .php file. If I do so and examine it, it's of zero size. This only happens when both 'download' and 'dltype' are set. I can provide diffs if needed.

 

Image at http://www.mcgees.org/img/ep.gif

 

The only thing I can think of that's changed is that the number of items in my catalog has grown significantly (to around 5000).

 

This may be a server problem, like the content-type headers not being set correctly. Has anyone seen something like this before?

 

- Josh

Share this post


Link to post
Share on other sites
I'm running into trouble. As you've probably heard before, "I'm certain I haven't changed anything" on my modified version of EasyPopulate 3.00 since it was last working.

 

When I try to "Download Complete tab-delimited" or "Create Complete tab-delimited" files, instead of the previous successful behavior, I'm prompted to save the .php file. If I do so and examine it, it's of zero size. This only happens when both 'download' and 'dltype' are set. I can provide diffs if needed.

 

Image at http://www.mcgees.org/img/ep.gif

 

The only thing I can think of that's changed is that the number of items in my catalog has grown significantly (to around 5000).

 

This may be a server problem, like the content-type headers not being set correctly. Has anyone seen something like this before?

 

- Josh

 

Simple problem: products_attributes had gotten too bloated, and the code was dying while trying the "// EP Optimization - SETUP ATTRIBUTES ARRAY - START" code.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×