自定义WHERE在Joomla 1.5中存储JTable行



我使用JTable在表中存储一条记录。我的表有3个主键(pid、eid、sid)。我想存储(插入,更新)一条记录我的代码:

$row =& JTable::getInstance('mytable', 'Table');
$row->load(
                array(
                    'pid'   =>$pid,
                    'eid'   =>$eid,
                    'sid' =>$sid
                    )
            );
$row->data = $data;
if (!$row->store()) {
                JError::raiseError(500, $row->getError() );
            }

load函数运行时带有警告:警告:mysql_real_escape_string()期望参数1是字符串,对象在…joomladatabasedatabasemysql.php on line 193

和store函数引发错误:

,但是存储在SQL语句中引发错误。SQL语句包含字段名、新值和'WHERE'关键字,但不带条件。

帮忙吗?

load函数接受一个整数作为输入(参见这里http://docs.joomla.org/JTable/load),因此您不能将数组传递给它。传递给它的整数应该是表的主键。这里可以使用3个主键中的任何一个,因为作为主键,它将是唯一的。

最新更新