如何使用插入查询joomla 2.5?
我正在使用joomla查询。如何使用插入查询joomla 2.5?
$query = "INSERT INTO '#__demo'('id', 'fname', 'mname', 'lname') VALUES ('$val', '$post['fname']', '$post['Mname']', '$post['Lname']');";
这是给错误
syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING
回答:
有上查询了两个错误。
您还没有幸免于
$_POST
值的引用。'$post['fname']'
// ^here and other places
您正在使用单引号
'
代表表和字段名。现在.. INTO '#__demo'(..
// ^here and other places
消除所有这些问题之后。您查询变为:
$query = "INSERT INTO `#__demo` (`id`, `fname`, `mname`, `lname`) VALUES ('$val', '$post[fname]', '$post[Mname]', '$post[Lname]');";
回答:
对于插入的数据你也可以使用这种格式的Joomla 2.5:
$data =new stdClass(); $data->id = null;
$data->field1 = 'val1';
$data->field2 = 'val2';
$data->field3 = 'val3';
$db = JFactory::getDBO();
$db->insertObject('#__mytable', $data, id);
stdClass的是PHP的基类,所有其他类扩展。
'id'是连接表的主键的名称。
回答:
您可以使用文字插入查询更加格式化方式
$db = JFactory::getDBO(); // get the connection $query = $db->getQuery(true);
$columns = array('field1','field2'); // set the column names to a variable
$values = array(1,$db->quote('Your message'));
$query->insert($db->quoteName('#__tablename'))
->columns($db->quoteName($columns))
->values(implode(',',$values));
$db->setQuery($query);
$db->execute();
$tourid = $db->insertid(); // get the last inserted id
你可以从这里
https://docs.joomla.org/Inserting,_Updating_and_Removing_data_using_JDatabase
以上是 如何使用插入查询joomla 2.5? 的全部内容, 来源链接: utcz.com/qa/258011.html