Hello,
I just downloaded the Email address exporter tool. Can someone who has installed this before tell me what folder to install it in? Should the EmailAddressExporter folder be placed in the Store folder?
Thanks!
Printable View
Hello,
I just downloaded the Email address exporter tool. Can someone who has installed this before tell me what folder to install it in? Should the EmailAddressExporter folder be placed in the Store folder?
Thanks!
Bringing back to the top. Has anyone intalled this add on?
Thanks!
just copy all the contents of the "admin" folder to your server's "admin" folder.
Hi and thanks for responding. There are subfolders in the admin folder which would be overwritten if I just copy the contents of admin to the store admin. Do you mean to copy the PHP files into their respective folders?
Thanks
Yes. I believe the instructions in the readme say the same thing a different way.Quote:
Originally Posted by mlm2005
Hello,
OK, everything worked and I checked off the box that says upload to server but I can't find the file now. There is no UPLOADS folder under STORE/IMAGES.
Thanks!
From the readme:If the folder doesn't exist, then either create it, or change the setting as indicated, so that it points to a real folder on your server ... with the designated permissions.Quote:
Edit the /admin/includes/extra_datafiles/email_export.php and set the DIR_FS_EMAIL_EXPORT to
the desired destination. Be sure the destination folder is CHMOD 777 (read/write).
... or don't tell it to "save" it, and just download the results directly (will happen after you click the submit button)
Hello,
Is there a way to just export the email addresses? I need to copy and past them into my Newsletter database but the exported file gives first and last name as well. Thanks!
Fastest way is to export the names and email addresses to a spreadsheet file.
Then in the spreadsheet remove the first/last name columns.
Then copy/paste the emails to your newsletter software.
Hi,
I'm also having trouble installing the Email Address Exporter plugin. I followed the simple instructions in the Readme.txt file and uploaded all the .php files into their corresponding folders in my cart admin folder, but when I click on the newly-created "Export Email Addresses" link in the Tools section of my Admin area, the result is "HTTP 404 Not Found" The webpage cannot be found.
I tried changing the permissions on the Email Address Exporter .php files that I uploaded, but none of the combinations I tried worked. What might I be doing wrong?
Thanks for you help
Diana
You don't need any special permissions on the files in the contribution. Put them back to their defaults.
When you hover over the "Export Email Addresses" link, what's the URL it shows you it's going to go to? ie: click on it. What's the URL in the browser address bar?
Oh.
Have you installed the Admin Profiles or Admin Levels addon? If so, you need to update the permissions to allow you to access the new admin "page" represented by the exporter, by following the instructions in the mod's readme file.
I have no idea. My website is hosted by Heritage Website Design, and they set everything up for me. I'm just learning about all this. How would I be able to tell if those Admin add-ons are installed, and where might I find a copy of the associated readme files?
Thanks so much for your help,
Diana
Admin->Tools->Admin Settings->Edit Permissions
The Admin Profiles mod files are here: http://www.zen-cart.com/index.php?ma...products_id=86 ... including the readme.
It means someone with more permissions than you has locked you out of making changes they think you might get confused with.
THANKS for this mod, it will really help. Is there a way to get it to export ALL 100% of the email address's regardless of subscription status?
Unfortunately I have COWOA (this is a great mod, but) installed and I have some customers with up to 6 entries so I am going to have to do some dup checking...
Is there a way to get the stock Tools/Send Email program to check for dups and send only one eMail per address?
JOhn ><>
Use phpMyAdmin to browse the query_builder table. Edit the "All Customers" entry so the query_category setting is "email, newsletters".
That will cause it to export email addresses of all customers in the customers table when you choose the "all customers" option.
I don't recommend just blindly emailing everyone though ...
I have installed this mod but when I click on the export email addresses I get this:
The requested URL /shop/admin/email_export.php was not found on this server.
What do I need to do to this to make it work?
Do I need to download the admin module as suggested previously?
Many thanks in advance
Many thanks- missed one of the files as you said. All sorted now. Thanks for your prompt reply!
I've download the Email Address Exporter. The directions read, " You can select any of the audiences available in your cart.
The most common audience would be Newsletter recipients.
If you choose the "Save To File On Server" option, you can set the "Destination Folder" "
....where is the option "newsletter recipients?" Where is there a "Save To File On Server" option. When I'm logged in as admin to my zen-cart page, I see several tabs with several drop downs. I feel like Tank in Matrix looking at a garbled screen, but I can't decipher it.
Please walk me step to step.
A million thank you's in advance!
OK this is perfect. I'm dying for this! The problem is, however, that I'd need to import ALL customer emails instead of only the newsletter subscribers? Could I somehow alter the mod to do it?
THANK YOU!
I'm uncertain why you want to bypass your customers' preferences and mass-mail them despite their choosing against that.
But ...
If it's important for you to export all customers' email addresses regardless of their wishes, you can alter 2 lines in the addon. Change the word 'newsletters' to 'email', as shown:
Line 75:and Line 245:Code:$audience_select = get_audience_sql_query($query_name, 'email');
Code:<?php echo zen_draw_pull_down_menu('audience_selected', get_audiences_list('email'), $query_name)?></td>
BRILLIANT. thanks. No spamming I promise..well it's complicated...
Works great :)
Hey, can you tell me which file to change "newsletters" to "email"? It's not changing anything for me.
Thanks!
Just upgraded to 1.3.9f. Used Filezilla, renamed Admin to my store directory name, dragged it into my Public_html folder. All the files dropped into place as needed. Double checked to make sure that the Images/uploads folder was there. Logged out of admin and then back in. BAM! There it was and it worked fabulously!
Thanks for such a handy mod. I was able to export ALL email addresses without having to modify any files. Took less than five minutes!
Great job!:clap:
Where do I find this mod?
Thanks
Hi Can someone please do a dummy version for me on how to install the E-mail Export Plugin. I have no clue what the readme file is refering to with the "Destination Folder", pointing to the CHMOD 777 i'm soo lost. I saved the plugin file right to me server folder and that is as far as I got. PLEASE help!!
-Michelle
To install:
1. Unzip the downloaded plugin file
2. Open the newly un-zipped folder and then open the "admin" folder
2. Now open your FTP program and navigate via ftp to your site's admin folder (you may have called it something other than "admin") -- upload the following to your admin folder on the server:
email_export.php
includes (the folder itself, in tact) <-- this will take care of itself upon upload
3. Go to your zen cart admin, click on TOOLS and then at the bottom, EXPORT EMAIL ADDRESSES
To Use:
I ignored the save to server option as I needed a simple text file to upload to a separte installation of PHPList. So simply select the format (csv, text, etc) and download to your hard disk.
Amazing plugin! Thanks, Dr.Byte :)
HI hoping someone can help me. I have downloaded the email address exporter and transferred the files into my site folder and uploaded them via ftp. After logging in to the admin area I cannot see the option within the Admin>Tools section of zencart though to access the necessary info info:huh:
Has anyone an idea where I may be going wrong???
Thanks
Using zencart v1.3.8a
If you can't see the menu option, then you haven't copied the /your_admin_foldername/includes/boxes/xxxxx/xxxx/xxxx files to the server properly.
And, if you didn't transfer *those* files properly, then you've likely not transferred the other files correctly either.
Remember, ALL the files belong under their respective folders under your (custom renamed) admin folder.
Hello, I am using V 1.5 and recently installed the email exporter modulule. Everything seemed to install correctly but when I go to export email's, it gives me this
Please choose the desired recipient list:
WARNING: An Error occurred, please refresh the page and try again.
Is there somthing else that needs to be updated in order for zencart to export the addresses?
Thanks
Did you ever install the old "newsletter subscribe" addon to your site at any time? ... and later removed it? If so, it probably has remnants of old alterations to it that are causing errors.
I had it installed when I was using V 1.3.8a but when I upgraded to v1.5 it was never installed. I just checked all the files that would have been over written if I had installed the add-on and they all matched the v1.5 files.
So I checked my debug file and got this.
[15-Aug-2012 12:27:00] PHP Warning: constant() [<a href='function.constant'>function.constant</a>]: Couldn't find constant TABLE_SUBSCRIBERS in /homepages/43/d213018754/htdocs/rocklove/includes/functions/audience.php on line 113
[15-Aug-2012 12:27:00] PHP Fatal error: 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 'as s left join customers as c on c.customers_id = s.customers_id' at line 1 :: select c.customers_firstname, c.customers_lastname, s.email_address as customers_email_address from as s left join customers as c on c.customers_id = s.customers_id in /homepages/43/d213018754/htdocs/rocklove/includes/classes/db/mysql/query_factory.php on line 101
Is there somthing that would have been changed in the SQL Database with the old newsletter addon as well?
Thanks for the help
Yes. Some of the queries that are stored in the query_builder table have been altered by that old addon, and if you don't put them back to the original content then you'll get the symptoms you're reporting.
Is there an easy way to restore that table or do you know of documentation online that shows the defult settings?
You could use the DROP TABLE and CREATE TABLE and INSERT INTO statements, for just that table, from the original /zc_install/sql/mysql_zencart.sql script.
I did what you suggested and it worked great, the email exporter is working perfectly!
Thanks for your help!!!!
Would you mind expanding on this. I have the same problem, I ran the following SQL statements, but I still have the problem:
# Table structure for table 'newsletters'
#
DROP TABLE IF EXISTS newsletters;
CREATE TABLE newsletters (
newsletters_id int(11) NOT NULL auto_increment,
title varchar(255) NOT NULL default '',
content text NOT NULL,
content_html text NOT NULL,
module varchar(255) NOT NULL default '',
date_added datetime NOT NULL default '0001-01-01 00:00:00',
date_sent datetime default NULL,
status int(1) default NULL,
locked int(1) default '0',
PRIMARY KEY (newsletters_id)
) ENGINE=MyISAM;
Thanks, Rob
I copied all the files into the respective folders but can't see the export email option in the tools menu. Tried it more than once and checked that the folders are correct but its still not working. I'm using v. 1.3.9b. Anybody can suggest a solution? thanks!
I'm going to second the plea for further details.
I'm completely new to modifying sql databases and I haven't any idea how to remove the remnants from the old newsletter subscribe mod from my database. I'm trying to rebuild from 1.3.0.2 onto 1.5.1
Thanks in advance to anyone who can assist.
ah ha!
I figured it out.
using the original /zc_install/sql/mysql_zencart.sql
search for all instances of "query_builder" and run the drop table, create table and insert into statements as a sql patch.
I realize this looks exactly like what Dr.Byte already suggested, but in my foggy brain, I did not latch onto the fact that it was the "query_builder" table that was of specific import.
OK I did that and still the same results. can some one suggest what else can be done please?
I have
Zencart 1.5.5d
EmailAddressExporter-151c2
===drop table==from Zencart 1.5.5d zc_install/sql/install/mysql_zencart.sql ===========
DROP TABLE IF EXISTS query_builder;
CREATE TABLE query_builder (
query_id int(11) NOT NULL auto_increment,
query_category varchar(40) NOT NULL default '',
query_name varchar(80) NOT NULL default '',
query_description TEXT NOT NULL,
query_string TEXT NOT NULL,
query_keys_list TEXT NOT NULL,
PRIMARY KEY (query_id),
UNIQUE KEY query_name (query_name)
) ENGINE=MyISAM COMMENT='Stores queries for re-use in Admin email and report modules';
===insert into statements=from Zencart 1.5.5d zc_install/sql/install/mysql_zencart.sql ================
## Insert the default queries for "all customers" and "all newsletter subscribers"
INSERT INTO query_builder ( query_id , query_category , query_name , query_description , query_string , query_keys_list ) VALUES ( '1', 'email', 'All Customers', 'Returns all customers name and email address for sending mass emails (ie: for newsletters, coupons, GVs, messages, etc).', 'select customers_email_address, customers_firstname, customers_lastname from TABLE_CUSTOMERS order by customers_lastname, customers_firstname, customers_email_address', '');
INSERT INTO query_builder ( query_id , query_category , query_name , query_description , query_string , query_keys_list ) VALUES ( '2', 'email,newsletters', 'All Newsletter Subscribers', 'Returns name and email address of newsletter subscribers', 'select customers_firstname, customers_lastname, customers_email_address from TABLE_CUSTOMERS where customers_newsletter = \'1\'', '');
INSERT INTO query_builder ( query_id , query_category , query_name , query_description , query_string , query_keys_list ) VALUES ( '3', 'email,newsletters', 'Dormant Customers (>3months) (Subscribers)', 'Subscribers who HAVE purchased something, but have NOT purchased for at least three months.', 'select max(o.date_purchased) as date_purchased, c.customers_email_address, c.customers_lastname, c.customers_firstname from TABLE_CUSTOMERS c, TABLE_ORDERS o WHERE c.customers_id = o.customers_id AND c.customers_newsletter = 1 GROUP BY c.customers_email_address, c.customers_lastname, c.customers_firstname HAVING max(o.date_purchased) <= subdate(now(),INTERVAL 3 MONTH) ORDER BY c.customers_lastname, c.customers_firstname ASC', '');
INSERT INTO query_builder ( query_id , query_category , query_name , query_description , query_string , query_keys_list ) VALUES ( '4', 'email,newsletters', 'Active customers in past 3 months (Subscribers)', 'Newsletter subscribers who are also active customers (purchased something) in last 3 months.', 'select c.customers_email_address, c.customers_lastname, c.customers_firstname from TABLE_CUSTOMERS c, TABLE_ORDERS o where c.customers_newsletter = \'1\' AND c.customers_id = o.customers_id and o.date_purchased > subdate(now(),INTERVAL 3 MONTH) GROUP BY c.customers_email_address, c.customers_lastname, c.customers_firstname order by c.customers_lastname, c.customers_firstname ASC', '');
INSERT INTO query_builder ( query_id , query_category , query_name , query_description , query_string , query_keys_list ) VALUES ( '5', 'email,newsletters', 'Active customers in past 3 months (Regardless of subscription status)', 'All active customers (purchased something) in last 3 months, ignoring newsletter-subscription status.', 'select c.customers_email_address, c.customers_lastname, c.customers_firstname from TABLE_CUSTOMERS c, TABLE_ORDERS o WHERE c.customers_id = o.customers_id and o.date_purchased > subdate(now(),INTERVAL 3 MONTH) GROUP BY c.customers_email_address, c.customers_lastname, c.customers_firstname order by c.customers_lastname, c.customers_firstname ASC', '');
INSERT INTO query_builder ( query_id , query_category , query_name , query_description , query_string , query_keys_list ) VALUES ( '6', 'email,newsletters', 'Administrator', 'Just the email account of the current administrator', 'select \'ADMIN\' as customers_firstname, admin_name as customers_lastname, admin_email as customers_email_address from TABLE_ADMIN where admin_id = $SESSION:admin_id', '');
INSERT INTO query_builder ( query_id , query_category , query_name , query_description , query_string , query_keys_list ) VALUES ( '7', 'email,newsletters', 'Customers who have never completed a purchase', 'For sending newsletter to all customers who registered but have never completed a purchase', 'SELECT DISTINCT c.customers_email_address as customers_email_address, c.customers_lastname as customers_lastname, c.customers_firstname as customers_firstname FROM TABLE_CUSTOMERS c LEFT JOIN TABLE_ORDERS o ON c.customers_id=o.customers_id WHERE o.date_purchased IS NULL', '');
Only item from the drop down isn't working is "Dormant Customers (>3months)(Subscribers)(xxx)"
It is giving >> WARNING: An Error occurred, please refresh the page and try again. warning.
Rest of the drop downs are fine working???
From the FAQs: http://www.zen-cart.com/content.php?...-and-try-again
here is the log.
[11-Jan-2017 07:46:29 Australia/Brisbane] Request URI: /xxxx/email_export.php?action=save, IP address: 14.202.99.123
#1 mysqli_query() called at [/home/xxxxx/public_html/includes/classes/db/mysql/query_factory.php:45]
#2 queryFactory->query() called at [/home/xxxxx/public_html/includes/classes/db/mysql/query_factory.php:257]
#3 queryFactory->Execute() called at [/home/xxxxx/public_html/xxxx/email_export.php:88]
[11-Jan-2017 07:46:29 Australia/Brisbane] PHP Warning: mysqli_query(): Empty query in /home/xxxxx/public_html/includes/classes/db/mysql/query_factory.php on line 45
[11-Jan-2017 07:46:29 Australia/Brisbane] Request URI: /xxxx/email_export.php?action=save, IP address: 14.202.99.123
#1 trigger_error() called at [/home/xxxxx/public_html/includes/classes/db/mysql/query_factory.php:167]
#2 queryFactory->show_error() called at [/home/xxxxx/public_html/includes/classes/db/mysql/query_factory.php:139]
#3 queryFactory->set_error() called at [/home/xxxxx/public_html/includes/classes/db/mysql/query_factory.php:266]
#4 queryFactory->Execute() called at [/home/xxxxx/public_html/xxxx/email_export.php:88]
[11-Jan-2017 07:46:29 Australia/Brisbane] PHP Fatal error: 0: :: ==> (as called by) /home/xxxxx/public_html/xxxx/email_export.php on line 88 <== in /home/xxxxx/public_html/includes/classes/db/mysql/query_factory.php on line 167
================================
Lines 44-49 query_factory.php
if(isset($queryLog)) $queryLog->start($query);
$result = mysqli_query($link, $query);
if(isset($queryLog)) $queryLog->stop($query, $result);
if(isset($queryCache)) $queryCache->cache($query, $result);
return($result);
}
It's not a problem with query_factory, because it's just executing the query given to it.
The email_export.php line 88 gives it a query, which it has just extracted from the database via lines 86-87, based on lines 72-73 which read whatever you chose from your dropdown menu.
Maybe the problem is that your server is being ultra sensitive about the kinds of data it allows to be submitted, and so could be treating the ">" symbol in "Dormant Customers (>3months) (Subscribers)" as a scary character (because > is the end of an HTML tag, and used in SQL queries).
To test that:
- go into phpMyAdmin
- to the query_builder table
- to (what is normally) record #3
- and look at the query_name field: Right now it should say: "Dormant Customers (>3months) (Subscribers)"
- Change the >3 in there to >3 so that it displays a greater-than symbol via html encoded characters instead of the actual symbol.
Save the change, and try the exporter again, after reloading the page.
Excellent!!!!!
Thank you Dr. Byte. Great support !
It worked
Is there another way, without having to change the default zc installation ?
I don't get it... in the send email, I have the option All, but in export I don't....
Hi I installed this plug in, Email Address Exporter but no phone numbers are exported, I have also made a change to the function but nothing, they are only exported surname name and email address
file function modify:
<?php
/**
* Register module into admin menu system
*/
if (!defined('IS_ADMIN_FLAG')) {
die('Illegal Access');
}
if (function_exists('zen_register_admin_page')) {
if (!zen_page_key_exists('emailExport')) {
zen_register_admin_page('emailExport', 'BOX_TOOLS_EMAIL_EXPORT','FILENAME_EMAIL_EXPORT', '', 'tools', 'Y', 10);
}
}
// other tweaking to add slightly more flexibility when exporting email addresses
$result = $db->Execute("SELECT query_string from " . TABLE_QUERY_BUILDER . " where query_name = 'All Customers'");
if ($result->fields['query_string'] == 'select customers_email_address, customers_firstname, customers_lastname, customers_telephone from TABLE_CUSTOMERS order by customers_lastname, customers_firstname, customers_email_address, customers_telephone') {
$db->Execute("UPDATE " . TABLE_QUERY_BUILDER . " set query_string='select customers_firstname, customers_lastname, customers_email_address, customers_telephone, c.*, a.* from TABLE_CUSTOMERS c, TABLE_ADDRESS_BOOK a WHERE c.customers_id = a.customers_id AND c.customers_default_address_id = a.address_book_id ORDER BY customers_lastname, customers_firstname, customers_email_address, customers_telephone' where query_name = 'All Customers'");
}
$result = $db->Execute("SELECT query_string from " . TABLE_QUERY_BUILDER . " where query_name = 'All Newsletter Subscribers'");
if ($result->fields['query_string'] == "select customers_firstname, customers_lastname, customers_email_address, customers_telephone from TABLE_CUSTOMERS where customers_newsletter = '1'") {
$db->Execute("UPDATE " . TABLE_QUERY_BUILDER . " set query_string='select customers_firstname, customers_lastname, customers_email_address, customers_telephone, c.*, a.* from TABLE_CUSTOMERS c, TABLE_ADDRESS_BOOK a WHERE c.customers_id = a.customers_id AND c.customers_default_address_id = a.address_book_id AND customers_newsletter = 1' where query_name = 'All Newsletter Subscribers'");
}
Whatever code you quoted looks like it came from the reg_email_address_exporter.php file that comes with the plugin. I don't know why you would modify it.
The /admin/email_export.php file automatically outputs the customer telephone number if it is available in the query, and the reg_email_address_exporter.php automatically puts it into the query.
It seems like you may have an old version of it from before 2017? or maybe a very old Zen Cart that hasn't been upgraded?
Hi, the version of the plug in is the last, and the zen cart version is the 155e, but the phone numbers do not export them. Thank you
Perhaps some installed plug in may have affected the operation? I have installed Recover cart sales, Reward Point, Edit Order,
Hello, for safety I made a new clean zen cart installation, and once the plug in is installed I confirm that the phone number is not exported, so the query that is proposed in the file does not work, we need a different query . Thank you
Hello
the query to do on the DB to get the result is:
SELECT `customers_firstname`,` customers_lastname`, `customers_email_address`,` customers_telephone`, `customers_newsletter`
FROM `zen_customers`
WHERE customers_newsletter = 1
How do I insert it into the Tool? Thank you