Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql Joomla Jdatabase select语句不工作_Mysql_Joomla - Fatal编程技术网

Mysql Joomla Jdatabase select语句不工作

Mysql Joomla Jdatabase select语句不工作,mysql,joomla,Mysql,Joomla,下面的Joomla(3.3)Jdatabase代码(由Fabrik使用)应该在数据库中找到一个名称。该名称以表单(var$data)形式提交,其值为“绿色” 但是,在执行代码时,我收到错误消息: 1054 - Unknown column 'green' in 'where clause' SQL=SELECT `user_id` FROM `weq_extendedreg_users` WHERE `cf_collectivename` = `green` Joomla php代码: $d

下面的Joomla(3.3)Jdatabase代码(由Fabrik使用)应该在数据库中找到一个名称。该名称以表单(var$data)形式提交,其值为“绿色”

但是,在执行代码时,我收到错误消息:

 1054 - Unknown column 'green' in 'where clause' SQL=SELECT `user_id` FROM `weq_extendedreg_users` WHERE `cf_collectivename` = `green`
Joomla php代码:

$db = JFactory::getDbo();

// Create a new query object.
$query = $db->getQuery(true);
$query->select($db->quoteName('user_id'));
$query->from($db->quoteName('#__extendedreg_users'));
$query->where($db->quoteName('cf_collectivename') . ' = '. $db->quoteName($data)); //use  $data for this form element
$db->setQuery($query);
$db->execute();
$collective_id = $db->loadResult(); //query returns null if fails

//var_dump($data,$collective_id);exit;
return isset($collective_id);
我不明白where语句有什么问题,为什么“代码认为”表单变量是表列?(我核对过)

有什么想法吗?

试试这个

$db->quote($data) instead of $db->quoteName($data)