Hi Adrian.
I carried on from my previous post and did the debug on a test installation. The findings are as follows:
webmail_dgraph has 14 columns (extra added by me since begining).
webmail_users has 21 columns (instead of 17 by default).
webmail_dgraph.def changes - updated the dgraph.def file to include all the attributes.=>Search Did Not Work.
- manually removed the extra attributes one by one. =>Search Did Not work as long as there were >12 attributes in the dgraph.def file.
- no matter which extra attributes were added in the def file (by hand) the search user form worked fine as long as there were 12 attributes in the def file. Beyond that it failed. By failed is meant that on clicking the Search Button nothing really happened.
webmail_users.def changes - With the above in place updated the users.def file =>Search Did Not Start
- Removed All The extra attributes from the def file and then added one =>Search Functions
- Added another one to the def file and search failed.
- The failure is independent of the extra attribute added to def file. No matter whatever is added, search functions with upto 18 defined in users.def file (with 12 already there in the dgraph.def file)
Check on total attributes in search form (based on dgraph.def+users.def) Just to check whether the failure was occuring on a comination of attributes exceeding 30 (dgraph.def+users.def). So reduced the dgraph.def by one extra attribute and added one additional attriubute to users.def file. The search functioned.
So upto 30 attributes in dgraph.def and users.def the search functions no matter which def file is being updates.
Why should the Search Fail (the form simply does not move on addition of 31st filed) beyond 30 attributes total (irrespective of which def file it is coming from) or is this a Bug?
The tables schema are as follows:
#
# Table structure for table `webmail_dgraph`
#
CREATE TABLE webmail_dgraph (
dgraph_userid int(10) unsigned NOT NULL default '0',
dgraph_email varchar(75) NOT NULL default '',
dgraph_first_name varchar(25) NOT NULL default '',
dgraph_last_name varchar(25) NOT NULL default '',
dgraph_address varchar(100) NOT NULL default '',
dgraph_city varchar(75) NOT NULL default '',
dgraph_state varchar(50) NOT NULL default '',
dgraph_zip varchar(10) NOT NULL default '',
dgraph_country varchar(50) NOT NULL default '',
dgraph_tempid varchar(15) NOT NULL default '',
dgraph_subdate date default '2003-04-04',
dgraph_actdate date default '2003-04-04',
dgraph_rdate date default '2004-04-04',
dgraph_tel varchar(15) default NULL,
PRIMARY KEY (dgraph_userid),
UNIQUE KEY dgraph_tempid(dgraph_tempid)
) TYPE=MyISAM;
#
# Table structure for table `webmail_users`
#
CREATE TABLE webmail_users (
userid int(10) unsigned NOT NULL auto_increment,
email varchar(255) NOT NULL default '',
password varchar(16) binary NOT NULL default '',
users_status enum('Not Validated','Validated','Suspended') NOT NULL default 'Validated',
users_last_login int(11) default '0',
users_space_used float(12,2) NOT NULL default '0.00',
users_space_allowed float(12,2) NOT NULL default '0.00',
users_max_pop int(11) NOT NULL default '5',
users_pass_phrase varchar(255) default NULL,
users_pass_answer varchar(255) default NULL,
users_join_time int(11) NOT NULL default '0',
users_default_template varchar(255) default 'default',
users_footer enum('Yes','No') NOT NULL default 'Yes',
users_hosting_use enum('Yes','No') default 'No',
hosting_record_created datetime NOT NULL default '0000-00-00 00:00:00',
hosting_record_expires date NOT NULL default '0000-00-00',
hosting_record_updated timestamp(8) NOT NULL,
users_max_profiles int(11) NOT NULL default '10',
users_globaddr_edit int(11) NOT NULL default '0',
users_payment_level varchar(32) default NULL,
users_payment_expiry int(11) NOT NULL default '0',
PRIMARY KEY (userid),
UNIQUE KEY userunique(email),
KEY users_pass_ndx(password)
) TYPE=MyISAM;
Thnx
Anup