Problem with DBDOFB and fb_crossLinks

From: Date: Mon, 20 Mar 2006 17:16:34 +0000
Subject: Problem with DBDOFB and fb_crossLinks
Groups: php.pear.general 
Request: Send a blank email to pear-general+get-23357@lists.php.net to get a copy of this message
Hi: I´m using PHP5 and the last version of DBDOFB, and I have the following tables: CREATE TABLE collection ( collection_id int(10) unsigned NOT NULL auto_increment, name varchar(30) NOT NULL default '', PRIMARY KEY (collection_id) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 CREATE TABLE collection2permission ( collection_id int(10) unsigned NOT NULL default '0', permission_id int(10) unsigned NOT NULL default '0', PRIMARY KEY (collection_id,permission_id) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 CREATE TABLE permission ( permission_id int(10) unsigned NOT NULL auto_increment, name varchar(30) NOT NULL default '', description varchar(100) default NULL, PRIMARY KEY (permission_id) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 Collection2permission, it´s the linking table. And for the Collection Form, I need a checkbox for every permission filled in the correspondent table. So, I defined the following in my collection.php file: var $fb_crossLinks = array(array('table' => 'Collection2permission', 'fromField' => 'collection_id', 'toField' => 'permission_id')); And, it´s working. But the problem is when I post the form, it dosen´t work properly, because whe I check or uncheck the items, it doesn´t create or delete the relationships in the linking table. One thing I discovered, trying to debug what is happening it´s that in the line number 2763 in the file FormBuilder.php, sanitizeFieldName returns the value '__crossLink_Collection_permission_collection_id_permission_id' and the field in $editableFields is "__crossLink_Collection2permission_collection_id_permission_id", the difference it´s a 2 in the middle of the word. So, the conditional if (in_array($crossLinkName, $editableFields)) it´s going to be always false. What I commented this line, trying to see if the problem was that I cannot name a table using a number, but it´s still not working. Can anyone help me, please? I don´t know what else to do. Thank you in advance. Regards, Jose Manuel Zea ______________________________________________ LLama Gratis a cualquier PC del Mundo. Llamadas a fijos y móviles desde 1 céntimo por minuto. http://es.voice.yahoo.com

« previous php.pear.general (#23357) next »