За последние 24 часа нас посетили 24265 программистов и 1654 робота. Сейчас ищут 832 программиста ...

повторяется, потому что цикл...

Тема в разделе "PHP для новичков", создана пользователем kowapos, 18 янв 2013.

  1. kowapos

    kowapos Активный пользователь

    С нами с:
    18 янв 2013
    Сообщения:
    120
    Симпатии:
    0
    Эта страница выводит список рубрик. через $_GET на эту страницу передается id рубрики. Потом идет проверка, если $link не соответствует массиву со всеми id рубрик из бд, то выводится "Данной рубрики не существует"
    Проблема в том, что если не равно, то "Данной рубрики не существует" выводит столько раз, сколько рубрик существует в таблице. например рубрик 5, я перехожу по ссылке, и если $link не равно массиву со всеми id рубрик из бд, то "Данной рубрики не существует" выводит пять раз. вот так:
    "Данной рубрики не существует"
    "Данной рубрики не существует"
    "Данной рубрики не существует"
    "Данной рубрики не существует"
    "Данной рубрики не существует"

    как сделать, что бы "Данной рубрики не существует" выводилось один раз, не в зависимости сколько рубрик в бд?

    Код (Text):
    1. <?
    2. define('HOME', $_SERVER[DOCUMENT_ROOT]);
    3.  
    4. include HOME.'/includes/location/top.php';
    5.  
    6. $link = abs(intval($_GET["public"]));
    7.  
    8.  
    9. $query = mysql_query("SELECT `category_id` FROM `mv_articles` ORDER BY `id` desc" ) or die (mysql_error());
    10. while ($row = mysql_fetch_array($query))
    11. {
    12.     if ($link == $row["category_id"])
    13.     {
    14.        
    15.  
    16.  
    17.                                                         if ($link == $link)
    18.                                                             {
    19.                                                            
    20.  
    21.                                                                 $query = mysql_query("SELECT *, SUBSTRING(`content`, 1, 100) AS `sub_content` FROM `mv_articles` where `category_id` = $link ORDER BY `id` desc" ) or die (mysql_error());
    22.                                                                 while ($row = mysql_fetch_array($query))
    23.  
    24.                                                                     {  
    25.                                                                        
    26.  
    27.                                                                                 echo '<div class = "right">';
    28.                                                                                 echo '<div id = "incat">';
    29.                                                                                 echo '<div class="time">'.$row["date"].' в '.$row["time"].'</div>';
    30.                                                                                 echo '<h3><a href = "/post/'.$row["id"].'">'.$row["title"].' &raquo;</a></h3>';
    31.                                                                                 echo '<p>'.$row["sub_content"].'...</p>';
    32.                                                                                 echo '<div class = "public">Автор: <a href = "#">'.$row["author"].'</a></div>';
    33.                                                                                 echo '</div>';
    34.  
    35.                                                                                 echo '</div>';
    36.                                                                        
    37.                                                                            
    38.  
    39.                                                                     }
    40.  
    41.                                                             }
    42.     }
    43.     else {echo '<div class = "error shadowtext">Данной рубрики не существует</div>';}
    44. }
    45.  
    46. include HOME.'/includes/location/bottom.php';
    47.  
    48. ?>
     
  2. r3l0c

    r3l0c Активный пользователь

    С нами с:
    10 янв 2013
    Сообщения:
    453
    Симпатии:
    4
    Первое что пришло в голову с вашим кодом
    Код (PHP):
    1. <?
    2. define('HOME', $_SERVER[DOCUMENT_ROOT]);
    3.  
    4. include HOME.'/includes/location/top.php';
    5.  
    6. $link = abs(intval($_GET["public"]));
    7.  
    8.  
    9. $query = mysql_query("SELECT `category_id` FROM `mv_articles` ORDER BY `id` desc" ) or die (mysql_error()); 
    10. $yeah=0;
    11. while ($row = mysql_fetch_array($query))
    12. {
    13.    if ($link == $row["category_id"])
    14.    {$yeah=1;
    15.       
    16.  
    17.  
    18.                                           if ($link == $link) 
    19.                                              {
    20.                                              
    21.  
    22.                                                 $query = mysql_query("SELECT *, SUBSTRING(`content`, 1, 100) AS `sub_content` FROM `mv_articles` where `category_id` = $link ORDER BY `id` desc" ) or die (mysql_error()); 
    23.                                                 while ($row = mysql_fetch_array($query))
    24.  
    25.                                                    {   
    26.                                                       
    27.  
    28.                                                             echo '<div class = "right">';
    29.                                                             echo '<div id = "incat">';
    30.                                                             echo '<div class="time">'.$row["date"].' в '.$row["time"].'</div>';
    31.                                                             echo '<h3><a href = "/post/'.$row["id"].'">'.$row["title"].' »</a></h3>';
    32.                                                             echo '<p>'.$row["sub_content"].'...</p>';
    33.                                                             echo '<div class = "public">Автор: <a href = "#">'.$row["author"].'</a></div>';
    34.                                                             echo '</div>';
    35.  
    36.                                                             echo '</div>';
    37.                                                       
    38.                                                          
    39.  
    40.                                                    }
    41.  
    42.                                              }
    43.    }
    44.     
    45. }
    46. if (!$yeah){echo '<div class = "error shadowtext">Данной рубрики не существует</div>';}
    47.  
    48. include HOME.'/includes/location/bottom.php';
    49.  
    50. ?>
     
  3. kowapos

    kowapos Активный пользователь

    С нами с:
    18 янв 2013
    Сообщения:
    120
    Симпатии:
    0
    спасибо)))))))