Я пытаюсь получить список ссылочных URL-адресов из таблицы MySQL ( referrer
столбца). Столбец- referrer
содержит один и тот же URL более одного раза, в котором я хочу подсчитать и напечатать, сколько раз появляется URL-адрес. Затем распечатайте подсчеты в порядке убывания.
У меня есть следующий код, но, очевидно, что-то не так
$ref=$icdb->get_row("SELECT COUNT(referrer) AS frequency, referrer FROM url_log WHERE u = '".$dom."' GROUP BY referrer ORDER BY frequency DESC"); foreach ($ref as $details) { echo "<td>".$details['referrer']."</td><td>".$details['frequency']."</td>"; }
Я экспортировал некоторые данные sql в виде массива:
$url_log = array( array('id' => '681','url_id' => '69','options' => '','created_day' => '20140128','created' => '1390945235','deleted' => '0','u' => 'rch.metwitter','referrer' => 'http://www.domain.com/','ipaddr' => '121.223.91.20','browser' => 'Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko'), array('id' => '685','url_id' => '69','options' => '','created_day' => '20140130','created' => '1391115029','deleted' => '0','u' => 'rch.metwitter','referrer' => 'http://www.domain.com/?page=custom&id=69','ipaddr' => '121.223.91.20','browser' => 'Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko'), array('id' => '686','url_id' => '69','options' => '','created_day' => '20140130','created' => '1391116005','deleted' => '0','u' => 'rch.metwitter','referrer' => 'http://www.domain.com/','ipaddr' => '121.223.91.20','browser' => 'Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko') );
Заявление foreach дает мне:
3 3 чч
Я думаю, что ваша проблема связана с COUNT (1). Я предлагаю изменить его на COUNT (referrer).