Zen Cart : The Art of E-Commerce II – Installation

Version 1.3.8a of the free open source shopping cart software “Zen Cart” can be downloaded from the official website. The installation guide is available at the same site in the tutorials section, a basic checklist to set up the shop and get it operational is included in the wiki section.

I installed a demo-version at my site www.web3.lu in the folder store_demo . I used the FTP program FileZilla to upload the software. The database can be managed with dbadmin. The MySQL version is 4.0.13.

After starting the installation, I received the error message that CURL is not compiled into PHP. CURL is required by some payment and shipping modules in order to talk to an external server to request real-time quotes or payment authorizations. An alert indicates that “Register Globals = ON”. Zen Cart™ can work with the “Register Globals” setting on or off. However, having it “off” leaves your system somewhat more secure. Another error message indicates that “PHP Safe Mode = ON”. Zen Cart™, being a full-service e-Commerce application, does not work well on servers running in Safe Mode. Two other alerts indicate for information that “PHP open_basedir restrictions = /www/provider/sarapro/pages” and that “PHP Output Buffering (gzip) = OFF”.

The database server is “ptmysql.pt.lu”, the name of the database is “sarapro”, the table-prefix is “store_demo” (to avoid confusions it’s better to end the prefix with _). Database sessions are stored in the database, the SQL cache method is set to “none”.

The physical path to Zen Cart™ is “/www/provider/sarapro/pages/store_demo”, the URL is “http://www.web3.lu/store_demo”. SSL is not activated. The phpBB forum is not installed.

The following initial values have been entered for the store setup:

  • Store Name : ARTGALLERY DEMO
  • Store Owner : Sara Proft
  • Store Owner email : alipa@saraproft.com
  • Store Country : Luxembourg
  • Store Zone : Alabama (Europe, default, nothing or Luxembourg does not exist)
  • Store Address :ARTGALLERY DEMO 36, rue Vullesang L-4853 Rodange Luxembourg
  • Default Language : English
  • Default Currency : Euro
  • Store Demo : yes
  • ZenCart update : no

I declared myself as administrator. After the succesful installation, I changed the proprieties of the config files on the server to “read only” and I deleted the install-folder for security reasons. The store setup values are registered in the config files. Congratulations: the demo-shop is working as expected.

Following tables have been created in the database sarapro (with the prefix store_demo) :

  • address_book
  • address_format
  • admin
  • admin_activity_log
  • authorizenet
  • banners
  • banners_history
  • categories
  • categories_description
  • configuration
  • configuration_group
  • counter
  • counter_history
  • countries
  • coupon_email_track
  • coupon_gv_customer
  • coupon_gv_queue
  • coupon_redeem_track
  • coupon_restrict
  • coupons
  • coupons_description
  • currencies
  • customers
  • customers_basket
  • customers_basket_attributes
  • customers_info
  • customers_wishlist
  • db_cache
  • email_archive
  • ezpages
  • featured
  • files_uploaded
  • geo_zones
  • get_terms_to_filter
  • group_pricing
  • languages
  • layout_boxes
  • manufacturers
  • manufacturers_info
  • media_clips
  • media_manager
  • media_to_products
  • media_types
  • meta_tags_categories_description
  • meta_tags_products_description
  • music_genre
  • newsletters
  • nochex_apc_transactions
  • nochex_sessions
  • orders
  • orders_products
  • orders_products_attributes
  • orders_products_download
  • orders_status
  • orders_status_historystore_demoorders_total
  • paypalstore_demopaypal_payment_status
  • paypal_payment_status_history
  • paypal_session
  • paypal_testing
  • product_music_extra
  • product_type_layout
  • product_types
  • product_types_to_category
  • products
  • products_attributes
  • products_attributes_download
  • products_description
  • products_discount_quantity
  • products_notifications
  • products_options
  • products_options_types
  • products_options_values
  • products_options_values_to_products_options
  • products_to_categories
  • project_version
  • project_version_history
  • query_builder
  • record_artists
  • record_artists_info
  • record_company
  • record_company_infostore_demoreviews
  • reviews_description
  • salemaker_sales
  • sessions
  • specials
  • tax_class
  • tax_rates
  • template_select
  • upgrade_exceptions
  • whos_online
  • zones
  • zones_to_geo_zones

I tried to install the product type book from Paul Hailey. When I run the SQL patch to create the book product tables, I receive the error message “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 ‘ENGINE=MyISAM’ at line 1
in: [CREATE TABLE store_demobook_authors”.

To fix this problem, I run the following example to test the syntax with success :

CREATE TABLE shop (
article INT(4) UNSIGNED ZEROFILL DEFAULT ‘0000’ NOT NULL,
dealer  CHAR(20)                 DEFAULT ”     NOT NULL,
price   DOUBLE(16,2)             DEFAULT ‘0.00’ NOT NULL,
PRIMARY KEY(article, dealer));
INSERT INTO shop VALUES
(1,’A’,3.45),(1,’B’,3.99),(2,’A’,10.99),(3,’B’,1.45),
(3,’C’,1.69),(3,’D’,1.25),(4,’D’,19.95);

The table store_demoshop was created with the correct values.

After deleting the default statement ENGINE=MyISAM, the patch was executed correctly and 169 statements have been processed. The following additional tables have been created in the database sarapro:

  • book_authors
  • book_authors_info
  • book_color
  • book_color_description
  • book_condition
  • book_condition_description
  • book_genre
  • book_genre_description
  • book_type
  • book_type_description
  • book_dd1
  • book_dd1_description
  • book_dd2
  • book_dd2_description
  • book_dd3
  • book_dd3_description
  • book_dd4
  • book_dd4_description
  • book_dd5
  • book_dd5_description
  • book_dd6
  • book_dd6_description
  • books_to_authors
  • books_to_genres
  • books_to_types
  • books_to_languages
  • books_to_dd1
  • books_to_dd2
  • books_to_dd3
  • books_to_dd4
  • books_to_dd5
  • books_to_dd6
  • product_book_extra

Finally I added the auction product type developped by Bramnick which is available at the Free Software Addons on the ZenCart website. After uploading the additional files, the SQL patch processed succesfully 17 statements.