Page 3 of 32 FirstFirst 1234513 ... LastLast
Results 21 to 30 of 317
  1. #21
    Join Date
    Dec 2008
    Posts
    8
    Plugin Contributions
    0

    Default Re: Easy Populate support for Version 1.2.5.5.csv

    Quote Originally Posted by phazei View Post
    I updated the version again. Added some stuff, cleaned up a bit of code. There is now a pretty file listing with import button next to each file.

    lstahlberg:
    No clue, sorry.
    How about this then...

    If I were to create new attributes for a product, could you customize EP to import THOSE columns instead of just the standard ones in the current spreadsheet model?

    For example, every product also has a Discount attribute. Can you tweak the program so that it imports a file with that additional field into the database.

    I also want to be able to purge the database in one step and rewrite it with fresh product listings.

    In an ideal world, I'd like to be able to automate this process with a shell script or something rather than just using the GUI. I figure if it can be done by clicking on something, it can be done on a command line.

    I would be willing to pay for this work, if you are available and it is affordable. I have several thousand products and I have no clue how to get them loaded.

  2. #22
    Join Date
    Jan 2009
    Posts
    31
    Plugin Contributions
    1

    Default Re: Easy Populate support for Version 1.2.5.5.csv

    Quote Originally Posted by lstahlberg View Post
    How about this then...

    If I were to create new attributes for a product, could you customize EP to import THOSE columns instead of just the standard ones in the current spreadsheet model?

    For example, every product also has a Discount attribute. Can you tweak the program so that it imports a file with that additional field into the database.

    I also want to be able to purge the database in one step and rewrite it with fresh product listings.

    In an ideal world, I'd like to be able to automate this process with a shell script or something rather than just using the GUI. I figure if it can be done by clicking on something, it can be done on a command line.

    I would be willing to pay for this work, if you are available and it is affordable. I have several thousand products and I have no clue how to get them loaded.

    I'm not really taking requests and don't have much time at the moment to work on the program. On the other hand, I am short on mortgage this month, lol.

    I'd suggest taking a look at Easy Populate Advanced first. It's not free, but it would be cheaper since it's already made and being sold as a product. It supposedly does the attribute thing I think. But it hasn't been updated since 2006 and nobody has heard from Langer or so I hear. I have no experience with it myself.


    I wouldn't want to make another pay for version of EP like langer did. It's a community plug-in. But you can PM me about it if you'd like.


    Currently I've been developing a site using ZenMagick. Really nice API and templates are insanely easier. I also have a desire to learn more about working with object oriented (OO) code.

    If I have time I'll probably work on creating the a EP from scratch for ZC 2.0. It supposedly more OO. Since it would be entirely my own work I would have a donation link.

    PS: For EPA: http://www.modhole.com/modhole/index.php
    It used to also be www.zencartbuilder.com but that site seems to have expired very recently. Seems like he didn't update it.
    Last edited by phazei; 14 Jan 2009 at 12:50 AM.

  3. #23
    Join Date
    Aug 2006
    Location
    portlandish, oregon
    Posts
    799
    Plugin Contributions
    0

    Default Re: Easy Populate support for Version 1.2.5.5.csv

    I would most definitely donate to you for that. In the meantime, I have a friend working on something for me that will do everything. I guess if that works I can hook others up with it. =)

  4. #24
    Join Date
    Feb 2008
    Posts
    1,336
    Plugin Contributions
    1

    Default Re: Here's a quick tutorial on how to add fields to easypopulate v1.2.5.4 or 1.2.5.5

    Are you familiar with the Advanced Easy Populate???
    I have an added mod to my site that creates new table to the database they are called maker_name and maker_model. How can I display the values of these 2 tables in my exported file. I managed to add the auction attributes and the MSRP Price table to the Easy Populate since they are tables inside the product_table. But the 2 new tables are separate from the product table.

  5. #25
    Join Date
    Jan 2007
    Posts
    1,483
    Plugin Contributions
    10

    Default Re: Here's a quick tutorial on how to add fields to easypopulate v1.2.5.4 or 1.2.5.5

    Quote Originally Posted by Glamorousshoe View Post
    Are you familiar with the Advanced Easy Populate???
    I have an added mod to my site that creates new table to the database they are called maker_name and maker_model. How can I display the values of these 2 tables in my exported file. I managed to add the auction attributes and the MSRP Price table to the Easy Populate since they are tables inside the product_table. But the 2 new tables are separate from the product table.
    I've never looked at the advanced version, that's the commercial version, right?

    I don't have a concrete answer for you, but you will probably need to add a call to that DB table wherever there is a call to the products table. Copy the code and paste it right below and change the table name and the columns you need.

    What is the advantage of the advanced over the regular version?

    I might be able to sort it out if I had a copy of it, but I am not sure how it's licensed, you'd have to check it to see if you can share it or not. By default, if it interacts with the Zen Cart code then it is covered under the Zen Cart GPL and can be shared.

    Zen Cart and it's community are the best!!

  6. #26
    Join Date
    Mar 2008
    Location
    The Free South
    Posts
    175
    Plugin Contributions
    0

    Default Re: Easy Populate support for Version 1.2.5.5.csv

    Kudos for EPcsv. Everything seems to be uploading flawlessly.

    However, I get this error when I try "Download Complete .csv file to edit (Attributes Not Included) " directly or to temp dir.

    Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 1004 bytes) in /home1/prorayco/public_html/mmadmin/easypopulate.php on line 847

    Any ideas?
    www.theCableStation.com
    "If we restrict liberty to attain security we will lose them both."

  7. #27
    Join Date
    Feb 2008
    Posts
    1,336
    Plugin Contributions
    1

    Default Re: Here's a quick tutorial on how to add fields to easypopulate v1.2.5.4 or 1.2.5.5

    I am not sure about copyrights either.
    To add the msrp for the easypopulate all I did was edit the easypopulate_export.php code listed below. Please note I only included the codes for the store and ex-store template due to the length of the code.
    The msrp tables where located inside the product_table so that was easy to do. My mod created 3 tables in the database which are called maker_name, model_name and maker_model. They are located in the database just like the product_table or any other database table. Do you think you can figure out something from the code if not I will be happy to email you the EP files.
    PHP Code:
    <?php
    /*
    Easy Populate for Zen Cart Copyright 2005 & 2006 Nicholas Keown - [email protected]
    Portions Copyright Zen Cart Developers, osCommerce, Tim Kroger, and numerous OsC contributors (see changelog/history
    Released under GPL v2.0
    */
    if (isset($ep_debug)) $sdltimer ep_timer();
    $export_error = array();
    $fieldmap = array();
    switch (
    $_GET['export'])
    {
    case 
    'store':
      
    $ep_file_types = array();
      
    $result ep_query('SELECT type_id, type_name FROM ' TABLE_PRODUCT_TYPES);
      for (
    $i 0$product_type_row $result->getRow($iECLIPSE_DB_ASSOC); $i++)
      {
        
    $ep_file_types[$product_type_row['type_id']] = $product_type_row['type_name'];
      }
      
    $iii 0;
      
    $filelayout = array(
                    
    'v_products_id'    => $iii++,
                    
    'v_products_model'    => $iii++,
                    
    'v_products_type'    => $iii++,
                    
    'v_products_image'    => $iii++,
                    );
      foreach (
    $ep_languages as $lang)
      {
        
    $filelayout  array_merge($filelayout , array(
                      
    'v_products_name_' $lang['code']    => $iii++,
                      
    'v_products_description_' $lang['code'] => $iii++,
                      ));
        if (isset(
    $ep_supported_mods['psd']))
        {
          
    $filelayout  array_merge($filelayout , array(
                        
    'v_products_short_desc_' $lang['code']  => $iii++,
                        ));
        }
        
    $filelayout  array_merge($filelayout , array(
        
    'v_products_url_' $lang['code'] => $iii++,
        ));
      }

      
    $header_array = array(
                        
    'v_products_msrp'   => $iii++,
                      
    'v_specials_price'    => $iii++,
                      
    'v_specials_date_available'     => $iii++,
                      
    'v_specials_expires_date'     => $iii++,
                      
    'v_products_price'    => $iii++,
                      
    'v_products_weight'   => $iii++,
                      
    'v_products_date_available'      => $iii++,
                      
    'v_products_date_added'      => $iii++,
                      
    'v_products_quantity'   => $iii++,
                      );
      
    $header_array['v_manufacturers_name'] = $iii++;
      
    $filelayout array_merge($filelayout$header_array);
      
    $filelayout['ptc_categories_index_path'] = $iii++;
      
    $filelayout['ptc_categories_destination_path'] = $iii++;
      
    $filelayout['ptc_categories_linked_path'] = $iii++;
      
    $filelayout array_merge($filelayout, array(
        
    'v_tax_class_title'   => $iii++,
        
    'v_products_status'      => $iii++,
        ));
      
    $filelayout_sql 'SELECT
        p.products_id as v_products_id,
        p.products_type as v_products_type,
        p.products_model as v_products_model,
        p.products_image as v_products_image,
        p.products_msrp as v_products_msrp,
        p.products_price as v_products_price,
        p.products_weight as v_products_weight,
        p.products_date_available as v_products_date_available,
        p.products_date_added as v_products_date_added,
        p.products_tax_class_id as v_products_tax_class_id,
        p.products_quantity as v_products_quantity,
        p.manufacturers_id as v_manufacturers_id,
        p.master_categories_id as v_master_categories_id,
        c.categories_id as v_categories_id,
        p.products_status as v_products_status
        FROM
        (' 
    TABLE_PRODUCTS ' as p LEFT JOIN 
        ' 
    TABLE_PRODUCTS_TO_CATEGORIES ' as ptc ON p.products_id = ptc.products_id) LEFT JOIN 
        ' 
    TABLE_CATEGORIES ' as c ON ptc.categories_id = c.categories_id';
      
    $dl_filename EASYPOPULATE_EXPORT_PREFIX_STORE;
      break;
    case 
    'extstore':
      
    $ep_file_types = array();
      
    $result ep_query('SELECT type_id, type_name FROM ' TABLE_PRODUCT_TYPES);
      for (
    $i 0$product_type_row $result->getRow($iECLIPSE_DB_ASSOC); $i++)
      {
        
    $ep_file_types[$product_type_row['type_id']] = $product_type_row['type_name'];
      }
      
    $iii 0;
      
    $filelayout = array(
                    
    'v_products_id' => $iii++,
                    
    'v_products_model' => $iii++,
                    
    'v_products_type' => $iii++,
                    
    'v_products_image' => $iii++
                    );
      
    $filelayout['v_manufacturers_name'] = $iii++;
      foreach (
    $ep_languages as $lang)
      {
        
    $filelayout['v_products_name_' $lang['code']] = $iii++;
        
    $filelayout['v_products_description_' $lang['code']] = $iii++;
        if (isset(
    $ep_supported_mods['psd']))
        {
          
    $filelayout['v_products_short_desc_' $lang['code']] = $iii++;
        }
        
    $filelayout['v_products_url_' $lang['code']] = $iii++;
      }
    $filelayout array_merge($filelayout, array(
                    
    'v_specials_price' => $iii++,
                    
    'v_specials_date_available' => $iii++,
                    
    'v_specials_expires_date' => $iii++,
                    
    'v_products_msrp' => $iii++,
                    
    'v_products_price' => $iii++,
                    
    'v_products_virtual' => $iii++,
                    
    'v_products_weight' => $iii++,
                    
    'v_products_date_available' => $iii++,
                    
    'v_products_date_added' => $iii++,
                    
    'v_products_quantity' => $iii++,
                    
    'v_products_ordered' => $iii++,
                    
    'v_products_quantity_order_min' => $iii++,
                    
    'v_products_quantity_order_units' => $iii++,
                    
    'v_products_priced_by_attribute' => $iii++,
                    
    'v_product_is_free' => $iii++,
                    
    'v_product_is_call' => $iii++,
                    
    'v_products_quantity_mixed' => $iii++,
                    
    'v_product_is_always_free_shipping' => $iii++,
                    
    'v_products_qty_box_status' => $iii++,
                    
    'v_products_quantity_order_max' => $iii++,
                    
    'v_products_sort_order' => $iii++,
                    
    'v_products_discount_type' => $iii++,
                    
    'v_products_discount_type_from' => $iii++,
                    
    'v_products_price_sorter' => $iii++,
                    
    'v_master_categories_id' => $iii++,
                    
    'v_products_mixed_discount_quantity' => $iii++,
                    
    'v_metatags_title_status'    => $iii++,
                    
    'v_metatags_products_name_status'    => $iii++,
                    
    'v_metatags_model_status'    => $iii++,
                    
    'v_metatags_price_status'    => $iii++,
                    
    'v_metatags_title_tagline_status'    => $iii++
                    ));
      foreach (
    $ep_languages as $lang)
      {
        
    $filelayout  array_merge($filelayout, array(
                      
    'v_metatags_title_' $lang['code']    => $iii++,
                      
    'v_metatags_keywords_' $lang['code']    => $iii++,
                      
    'v_metatags_description_' $lang['code']    => $iii++
                      ));
      }
      
    $filelayout['ptc_categories_index_path'] = $iii++;
      
    $filelayout['ptc_categories_destination_path'] = $iii++;
      
    $filelayout['ptc_categories_linked_path'] = $iii++;
      
    $filelayout['v_tax_class_title'] = $iii++;
      
    $filelayout['v_products_status'] = $iii++;
      
    $filelayout_sql 'SELECT
        p.products_id as v_products_id,
        p.products_type as v_products_type,
        p.products_quantity as v_products_quantity,
        p.products_model as v_products_model,
        p.products_image as v_products_image,
        p.products_msrp as v_products_msrp,
        p.products_price as v_products_price,
        p.products_virtual as v_products_virtual,
        p.products_date_added as v_products_date_added,
        p.products_date_available as v_products_date_available,
        p.products_weight as v_products_weight,
        p.products_status as v_products_status,
        p.products_tax_class_id as v_products_tax_class_id,
        p.manufacturers_id as v_manufacturers_id,
        p.products_ordered as v_products_ordered,
        p.products_quantity_order_min as v_products_quantity_order_min,
        p.products_quantity_order_units as v_products_quantity_order_units,
        p.products_priced_by_attribute as v_products_priced_by_attribute,
        p.product_is_free as v_product_is_free,
        p.product_is_call as v_product_is_call,
        p.products_quantity_mixed as v_products_quantity_mixed,
        p.product_is_always_free_shipping as v_product_is_always_free_shipping,
        p.products_qty_box_status as v_products_qty_box_status,
        p.products_quantity_order_max as v_products_quantity_order_max,
        p.products_sort_order as v_products_sort_order,
        p.products_discount_type as v_products_discount_type,
        p.products_discount_type_from as v_products_discount_type_from,
        p.products_price_sorter as v_products_price_sorter,
        p.master_categories_id as v_master_categories_id,
        p.products_mixed_discount_quantity as v_products_mixed_discount_quantity,
        p.metatags_title_status as v_metatags_title_status,
        p.metatags_products_name_status as v_metatags_products_name_status,
        p.metatags_model_status as v_metatags_model_status,
        p.metatags_price_status as v_metatags_price_status,
        p.metatags_title_tagline_status as v_metatags_title_tagline_status,
        c.categories_id as v_categories_id
        FROM
        (' 
    TABLE_PRODUCTS ' as p LEFT JOIN 
        ' 
    TABLE_PRODUCTS_TO_CATEGORIES ' as ptc ON p.products_id = ptc.products_id) LEFT JOIN 
        ' 
    TABLE_CATEGORIES ' as c ON ptc.categories_id = c.categories_id';
      
    $dl_filename EASYPOPULATE_EXPORT_PREFIX_EXTENDED_STORE;
      break;
    Last edited by CoolCarPartsOnline; 17 Jan 2009 at 12:46 AM. Reason: forgot something

  8. #28
    Join Date
    Jan 2009
    Posts
    31
    Plugin Contributions
    1

    Default Re: Easy Populate support for Version 1.2.5.5.csv

    Quote Originally Posted by micmed View Post
    Kudos for EPcsv. Everything seems to be uploading flawlessly.

    However, I get this error when I try "Download Complete .csv file to edit (Attributes Not Included) " directly or to temp dir.

    Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 1004 bytes) in /home1/prorayco/public_html/mmadmin/easypopulate.php on line 847

    Any ideas?
    Hmm, 33megs. How many products do you have? It runs through all the products you have and stores them in an array. I suppose that array is getting too big and causes it to die. There's no simple fix. I can perhaps get a product count and using the product ID, have a drop down that says, download first half of products, download second half of products.
    Maybe I could make it write each line one by one instead of doing it all in the end. That might make it easier. I don't have any product list that big to test with at all though, so I wouldn't know if it fixed it or not.
    Is this the first time you used EP, or did you have the previous version too? If so, how long did it actually take to export and import?
    30megs is huge!

  9. #29
    Join Date
    Jan 2009
    Posts
    8
    Plugin Contributions
    0

    Default Re: Easy Populate support for Version 1.2.5.5.csv

    Quote Originally Posted by phazei View Post
    That doesn't reflect any line number in the file that uses array_flip. You must have modified it in some way.

    The only place I see where that could be possible is by the while loop around line 1220.

    Only if fgetcsv returns false on it's first call near line 1220 would you get that error. That reads the header line of the file.

    You have to make sure it is a comma and quote deliminated file.

    If you open it with a text editor, it should look like the one it exports. The first line needs to be identical.


    I uploaded an updated one that should be approved soon. But it probably won't fix your problem.

    Something you modified in easypopulate or someway you saved your csv is likely the problem.
    I'm getting the same error: array_flip(): The argument should be an array in /home/content/m/a/n/XXXX/html/95p/admin/easypopulate.php on line 1222

    I have not modified anything that I know of. I just installed it a couple minutes ago and have no other mods installed (aside from a template).

    You say to open it in a text editor. I'm opening it in Excel 2007 and saving it as a .csv. Is there a problem with that? What other way should it be saved?

    I appreciate any help anyone can give.

    Also, my mysql is 5.0. Could that be the problem?

  10. #30
    Join Date
    Jan 2009
    Posts
    31
    Plugin Contributions
    1

    Default Re: Easy Populate support for Version 1.2.5.5.csv

    Quote Originally Posted by vagabondette View Post
    I'm getting the same error: array_flip(): The argument should be an array in /home/content/m/a/n/XXXX/html/95p/admin/easypopulate.php on line 1222

    I have not modified anything that I know of. I just installed it a couple minutes ago and have no other mods installed (aside from a template).

    You say to open it in a text editor. I'm opening it in Excel 2007 and saving it as a .csv. Is there a problem with that? What other way should it be saved?

    I appreciate any help anyone can give.

    Also, my mysql is 5.0. Could that be the problem?
    My bad, the version I was looking at was slightly different than the one i uploaded. It is line 1222.

    Excel07 should be fine. As long as it's saved as a csv. Hmm, that means the fgetcsv isn't returning an array so it's reading something wrong.

    Limit your product list to a handful of items and try it then. If it still gives the error, send me the csv you're trying to upload and I'll see if I get the same error with it and find out what I can do to fix it.

 

 
Page 3 of 32 FirstFirst 1234513 ... LastLast

Similar Threads

  1. Basic Description of EasyPopulate database fields?
    By Ben-B in forum All Other Contributions/Addons
    Replies: 1
    Last Post: 7 Feb 2008, 05:56 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
disjunctive-egg