У меня есть запрос:
SELECT * FROM categorys
LEFT JOIN category_info ON categorys.cat_id=category_info.cat_id
WHERE `cat_name` = 'aname'
ORDER BY `cat_order`
Когда я запускаю это в phpMyAdmin, я получаю cat_id независимо от того, есть ли совпадение во второй таблице.
Однако, когда яЗапустив этот запрос в моем PHP-коде, я получаю пустой cat_id, как показано этим print_r ():
Array ([cat_id] => [cat_name] => baths [type] => main[cat_order] => 99 [cat_img] => [display] => 1 [удалено] => 0 [desc_id] => [desc] => [text] =>)
Зачемможет быть другой результат, когда запрос точно такой же?
РЕДАКТИРОВАТЬ: мой код PHP:
$getcatidsql = "SELECT * FROM categorys
LEFT JOIN category_info ON categorys.cat_id=category_info.cat_id
WHERE `cat_name` = '{$cname}'
ORDER BY `cat_order";
$getcatidresult = $db->query( $getcatidsql );
$catdata = $db->fetchRow( $getcatidresult );
function query() {
$this->query_total++;
if (func_num_args() == 1) {
$sql = func_get_arg(0);
} else {
$args = func_get_args();
for ($i=1;$i<count($args);$i++) if (!is_numeric($args[$i])) $args[$i] = '"'.mysql_real_escape_string($args[$i]).'"';
$sql = vsprintf(array_shift($args),$args);
}
if ($result = mysql_query($sql,$this->db_connection)) {
return $result;
} else {
$this->dberror( $this->db_connection, $sql );
}
}
function fetchRow($result,$type=MYSQL_ASSOC)
{
if($result)
$row = mysql_fetch_array($result,$type);
return $row;
}