Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: счетчик позиций в подразделе
 
 автор: franko   (09.04.2011 в 22:44)   письмо автору
 
 

Добрый вечер!

вывожу регионы.
<?php  
$sql 
mysql_query("SELECT * FROM regions ORDER by title");     
if(!
$sql)   
{echo 
"<br>В данном разделе пока нет информации";}   
else    
{   
  if(
mysql_num_rows($sql) > 0)    
  {    
    while (
$row mysql_fetch_array($sql))     
    {     
      
$filename[] = "<a href='post_regions.php?id_region=$row[id_region]'>$row[title] ($total)</a>"
    } 
  } 

?>

в скобках надо указать $total - кол-во записей, которые имеют одинаковый id_region, но проблема в том что нижеследующее не работает потому неизвестна $row[id_region]
<?php
 $res 
mysql_query("SELECT * FROM universities");
 
$res mysql_query("SELECT COUNT(*) FROM universities WHERE id_region='$row[id_region]'");
  
$row mysql_fetch_row($res);
  
$total $row[0]; // всего записей
?>

как вытащить $row[id_region]

  Ответить  
 
 автор: clubxaliav   (09.04.2011 в 22:58)   письмо автору
 
   для: franko   (09.04.2011 в 22:44)
 

Это в одном файле, или ты переходишь по ссылке и второй файл не выводит тебе id_region?

  Ответить  
 
 автор: franko   (09.04.2011 в 23:14)   письмо автору
 
   для: clubxaliav   (09.04.2011 в 22:58)
 

все в одном файле

  Ответить  
 
 автор: clubxaliav   (10.04.2011 в 00:08)   письмо автору
 
   для: franko   (09.04.2011 в 22:44)
 

while ($row = mysql_fetch_array($sql))     
    {     
      $id_region = $row['id_region'];
      $title = $row['title'];
      $filename[] = "<a href='post_regions.php?id_region=$id_region'>$title ($total)</a>"; 
    }


и

<?php
  $res 
mysql_query("SELECT DISTINCT id_region FROM universities WHERE id_region = '$id_region' ");
  
$result mysql_query($res);
  
$total mysql_num_rows $result );
?> 


Может так поможет. А по подробнее можно, прикрепите файл

  Ответить  
 
 автор: franko   (10.04.2011 в 08:29)   письмо автору
2.6 Кб
 
   для: clubxaliav   (10.04.2011 в 00:08)
 

прикладываю файл.

вот здесь http://catalog.11klassniki.ru/regions.php счетчик нужен

  Ответить  
 
 автор: clubxaliav   (10.04.2011 в 08:40)   письмо автору
 
   для: franko   (10.04.2011 в 08:29)
 

а нужен счетчик регионов в скобках, щя дам свой вариант как у меня.

  Ответить  
 
 автор: clubxaliav   (10.04.2011 в 08:49)   письмо автору
 
   для: franko   (10.04.2011 в 08:29)
 

$numcols = get_sysval( "stolbik" );  // Тут беру из админки, у тя вроде 3 столбика, можешь заменить

// Тут я вывожу основные категории
$query = ( "SELECT * FROM $tables[t_dirs] 
            WHERE razdel_dir = 'Основная категория'
            ORDER BY position_dir ASC" ); 
$result = mysql_query ( $query ); 
$total = mysql_num_rows ( $result ); 

while ($row = mysql_fetch_array($result)) {  
                
                $filename[] = $row['name_dir'];   

  } 

// Вычисляем число строк
  $number = (int)($total/$numcols);
  if((float)($total/$numcols) - $number != 0) $number++;

  // Формируем промежуточный двумерный массив
  for($i = 0; $i < $number; $i++)
  {
    for($j = 0; $j < $numcols; $j++)
    {
      $arr[$i][$j] = $filename[$j*$number + $i];
    }
  } 


  // Выводим таблицу
  echo "<table width=664 height=100% cellspacing=0 cellpadding=0>";
  for($i = 0; $i < $number; $i++)
  {
    echo "<tr>";
    for($j = 0; $j < $numcols; $j++)
    {
      
      $links = ( "SELECT * FROM `byp_links`, `byp_dirs` WHERE byp_links.dir = byp_dirs.name_dir AND byp_dirs.razdel_dir = '".$arr[$i][$j]."' AND byp_links.status = '1'" );              
                $dirlink = mysql_query ( $links );
                $n = mysql_num_rows ( $dirlink );
                if (!empty($arr[$i][$j]))  $n = "[ ".intval($n)." ]"; 
                else  $n = "";

      echo "<td valign=top><font color=\"#0a7e3f\"><strong>".$arr[$i][$j]."</strong></font> $n<br />";
      
      // Здесь вывожу подкатегории к каждой категории
      $sql = ( "SELECT * FROM `byp_dirs` 
                          WHERE razdel_dir = '".$arr[$i][$j]."'                           
                          ORDER BY id_dir ASC" );                          
                $subraz = mysql_query ( $sql );                
                
                while ($sub = mysql_fetch_array($subraz)) {                

                                $subname = $sub['name_dir'];  
                                $subid = $sub['id_dir'];
                                
                                $sublinks = ( "SELECT * FROM `byp_links` WHERE dir = '$subname' AND status = '1'" );
                                $subdirlink = mysql_query ( $sublinks );
                                $ns = mysql_num_rows ( $subdirlink );                                
                                if ( $ns == 0 ) { $ns = "0"; }                              
                                
                                echo " - <a href=\"katsite.php?mod=razdel&id=$subid\">$subname [ $ns ]</a><br />";
                                
                             }
      echo "<br /></td>";                       

    }
    echo "</tr>";
  } 
  echo "</table>";

  Ответить  
 
 автор: franko   (10.04.2011 в 09:03)   письмо автору
 
   для: clubxaliav   (10.04.2011 в 08:49)
 

спасибо. но сложно разобраться.

так и не разобрался.

  Ответить  
 
 автор: franko   (11.04.2011 в 11:58)   письмо автору
 
   для: franko   (10.04.2011 в 09:03)
 

кто-нибудь знает?

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования