Trouble Uploading Lists

stanbusk

Administrator
Staff member
Have you asked your web hosting provider? They have logs on their side. They can see what's happening. They often activate PHP and Apache security settings than can produce this kind of problems. If it worked before it is very likely because of a change they made. MBM and MLM uses standard HTTP POST command to send the data to the server.
 

Lori

New Member
I've turned debugging on and I get a whole bunch of (about 60+.... one for every field on the table and then some counting variables) Undefined variables and constants

Here's the typical looking notice
Notice: Undefined variable: email in /hostdir1/hostdir2/public_html/lm/lm.php on line 515
and
Warning: preg_match(): No ending delimiter '^' found in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 1927

My hosting company sees no unusual log activity.

Please help me fix this. I get problems with:
http://mysitecom/lm/lm.php?cmd=admin&action=showlists
http://mysite.com/lm/lm.php?cmd=admin&a ... e=1&size=2
http://mystie.com/lm/lm.php?cmd=admin&a ... ist=list01
AND
subscribe_single_fixed.php

EVEN YOUR OWN TEST SITE behaves as mine does (redirects and does no updating to the DataBase)
http://www.maxprog.com/site/scripts/lis ... _fixed.php
 

stanbusk

Administrator
Staff member
These 'Notice: Undefined variable:' are notifications, not errors. PHP shows a notification in debugging mode when you use a variable without declaring first. You can ignore that.

This 'Warning: preg_match(): No ending delimiter '^' ' is a warning, not an error either.
 

Lori

New Member
Stan thanks for the clarification. Can you look into your

http://www.maxprog.com/site/scripts/lis ... _fixed.php

perhaps that will give us an idea of what's going on? Mine does the same thing yours appears to be doing - a redirect, then no update to the database (so no email confirmation). I don't get the INVALID EMAIL ADDRESS! error message on this one, but it doesn't go to the confirmation page either.

This however IS working -
lm.php?cmd=subscribe&list=list1[;list2;...]&email=email_addr[&pwd=password]
It updates the database, sends out confirmation email. Email confirmation links update database records in both tbl_mlm_sub_req and tbl_mlm_sub tables.

My email and stats tracking are both working as well.
 

Lori

New Member
I'm getting emails now (perhaps because I have debug turned on)

That indicate

MLM] Error creating the table in CreateSubscribtionRequestTable()
1103: Incorrect table name ''
 

Lori

New Member
Hello Stan,

No, this is what i have:

$tbname = 'tbl_mlm_sub'; // mySQL Table name for mailing lists
$tbname_req = 'tbl_mlm_sub_req'; // mySQL Table name for subscription requests
$tbname_off = 'tbl_mlm_sub_loc'; // mySQL Table name for local requests (sub/unsub)
$tbname_clk = 'tbl_mlm_sub_clk'; // mySQL Table name for click-Through tracking
 

stanbusk

Administrator
Staff member
Ok, so the subscription request table is 'tbl_mlm_sub_req'. This is a valid name. Is this with current MLM 3.1.4 ?
 

Lori

New Member
Yes I'm on 3.1.4

Here is my diagnostic

MLM 3.1.4 diagnose ran on 2014-06-05 at 07:20:16

request_uri = http://mywebsite.com/lm/lm.php?cmd=diag ... MyPassword
path_to_script = http://mywebsite.com/lm/lm.php
working_directory = /hostdir1/hostdir2/public_html/lm

mailqueue permissions = 0755
sqlqueue permissions = 0755
uploads permissions = 0755
imports permissions = 0755
templates permissions = 0755

#1 mysql_connect( localhost, myusername, mypassword, mysite_myDB )
-> Connection OK!

#2 mysql_select_db( mysite_myDB )
-> Database selection OK!

#3 mysql_query( SELECT * FROM `tbl_mlm_sub_req` WHERE `fld_sub` = '0' )
-> Query OK!

#4 mysql_query( SELECT * FROM `tbl_mlm_sub` WHERE `fld_list` = '' )
-> Query OK!

#5 mysql_query( SELECT * FROM `tbl_mlm_sub_clk` WHERE `fld_delivery` = '' )
-> Query OK!


Notice: Undefined variable: result in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 2898

Notice: Use of undefined constant fld_list - assumed 'fld_list' in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 2899

Notice: Undefined variable: result in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 2899

Notice: Use of undefined constant fld_list - assumed 'fld_list' in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 2899

Notice: Use of undefined constant fld_list - assumed 'fld_list' in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 2899

Notice: Undefined variable: result in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 2898

Notice: Use of undefined constant fld_list - assumed 'fld_list' in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 2899

Notice: Undefined variable: result in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 2899

Notice: Use of undefined constant fld_list - assumed 'fld_list' in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 2899

Notice: Use of undefined constant fld_list - assumed 'fld_list' in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 2899

Notice: Undefined variable: count in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 183

Warning: Missing argument 1 for GetDeliveryListSizeFromDB(), called in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 4123 and defined in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 4164

Warning: Missing argument 2 for GetDeliveryListSizeFromDB(), called in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 4123 and defined in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 4164
#6 3 list(s), 4 recipient(s), 1 deliveries
-> No error found.

Lists (List Name | Total Recipients | Modification Date):

Notice: Undefined variable: result in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 2898

Notice: Use of undefined constant fld_list - assumed 'fld_list' in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 2899

Notice: Undefined variable: result in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 2899

Notice: Use of undefined constant fld_list - assumed 'fld_list' in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 2899

Notice: Use of undefined constant fld_list - assumed 'fld_list' in /hostdir1/hostdir2/public_html/lm/lm_functions.php on line 2899
List01 | 1 | 2014-06-02 14:54:05
list01 | 2 | 2014-06-02 14:54:05
list02 | 1 | 2014-06-02 14:54:05
 

stanbusk

Administrator
Staff member
You should deactivate debug mode for real use. MLM doesn't perform well in debug mode because of the notifications.
 

noel_tv

New Member
I have this very same problem of uploading lists.

Lori, Stan, what did you conclude is the solution ? I don't see it in the discussion and would like to solve my issue as well.

Thanks,
Noel
 

stanbusk

Administrator
Staff member
Practically 100% of problems with uploads come from the server itself. The web server can simply block access because he believes he is under attack. The 'Recipients > Upload to MLM' window has a settings button. Those settings consist on how lists have to be uploaded and at which rate. Perhaps you have to upload small chunks and wait enough time to make sure the server is not seeing you as a hacker.
 

noel_tv

New Member
Hello Stan, Lori

I think the problem may be with the server host. I host with domain.com, and they said that they do not allow access to the database and site files from anywhere else except from the control panel. That may explain as to why the mailer is unable to converse with the server - the security settings do not allow it.

The solution may be moving to a VPS because from there you have unlimited security access to your database ? I stand to be corrected.
 

stanbusk

Administrator
Staff member
mySQL servers are by default set not to accept connections from outside the network they are located in. MLM runs locally on the same network as the mySQL server so it is not a problem. MLM is actually an interface between MaxBulk Mailer, your web server and the mySQL server. Anyway you can check the connection with this command:

lm.php?cmd=diagnose&pwd=YOUR_MLM_PASSWORD

The first check is the connection check.
 

noel_tv

New Member
Ran the test, connection is good, so then very confusing.

When I go to the back end in public_html/lm/lm/uploads I see the txt files and the addresses that I uploaded are there, but when I uploaded them they said that no addresses has been added to the list. And when I call on the remote lists via the via application, it shows that the lists have only 1 address in it - mine.

Maybe there is a step that we are skipping?

Just in case, here is my procedure for adding the contacts to the list:

1. First create list name XY
2. Upload contacts in tab delimited format
3. Fill in 'Target List Name ' with XY, as I want the contacts to go to that list name.
4. Click 'Append'

is there anything else we should be doing besides this?

Also, the only reason I am so adamant at trying to get the app to interact with the contacts on the server is because I want unsubscribes to handled by the program, I don't want to do it manually. Is there a way to have the unsubscribes be handled by the mailer despite its current status? How?

noel
 

stanbusk

Administrator
Staff member
Is your list formatted this way?

Firstname<tab>Lastname<tab>Company<tab>E-mail adddress
 

Lori

New Member
Is this what you did to get it to work?


One line 1924 try to replace this:
Code:
function isEmailValid( $email ) {

//if ( !eregi( "^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$", $email ) ) { <- Obsolete in PHP 5.3
if ( !preg_match( "^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/i", $email ) ) {
return false;
} else {
return true;
}
}

with this
Code:
function isEmailValid( $email ) {
return true;
}
 
Top