Привет всем! Проблема вот в чем: Делаю включение и выключение новости... Но вот в чем загвоздка: само включение и выключение в базе происходит, но ссылки не меняются на включено или выключено, а всегда в одном положении (хотя повторюсь все действо в базе происходит нормально): Вот код: PHP: $query = "SELECT hide FROM news"; $new = mysql_query($query); if (mysql_num_rows($new)) { while($news = mysql_fetch_array($new)) { if($news['hide'] == 'hide') $strhide = "<a title=Отобразить href=news.php?lc=shownews&id-news=".$id."><b>Отображать</b></a>"; else $strhide = "<a title=Скрыть href=news.php?lc=hidenews&id-news=".$id."><b>Скрывать</b></a>"; } } echo ' <TR><TD COLSPAN=2> ['.$strhide.'] </TD></TR> '; Думаю вся проблема в этом куске: PHP: if($news['hide'] == 'hide') $strhide = "<a title=Отобразить href=news.php?lc=shownews&id-news=".$id."><b>Отображать</b></a>"; else $strhide = "<a title=Скрыть href=news.php?lc=hidenews&id-news=".$id."><b>Скрывать</b></a>"; Постоянно красуется ссылка скрывать новость, хотя в базе произошло переключение и должно бы уже быть отображать Помогите пожалста мне разобраться!
PHP: <?php if ($news['hide'] == 'hide'){ $strhide = "<a href='news.php?lc=shownews&id-news=" . $id . "' title='Показать'><b>Показать</b></a>"; } else { $strhide = "<a href='news.php?lc=hidenews&id-news=" . $id . "' title='Скрыть'><b>Скрыть</b></a>"; } ?>
darkgod Почему переменная $strhide формируется внутри цикла, а используется за его пределами? И если уж на то пошло, нафиг текстовой ссылке title?
титле ничему не мешает - это раз... два - я тока пишу код, дизайн и все прочее еще не делается, так что это вообще отношения не имеет... если я нуб в пхп - это не значит что я нуб в хтмл... Вот тут как раз возникает непонятная мне проблема... я и сам знаю что нужно внутри использовать, но когда использую внутри, то получается огромная куча ссылок скрыть и отобразить, которая формируется умножая общее колличество новостей на 5, и это мне не совсем ясно... Поэтому я и прошу помощи, или возможно есть другое какое то решение... А ваща критика мне тут совсем не нужна...
Не дождавшись рельной помощи, сам изучил весь алгоритм и починил... Теперь все работает как положено... А сделал та... вместо PHP: $query = "SELECT hide FROM news"; $new = mysql_query($query); if (mysql_num_rows($new)) { while($news = mysql_fetch_array($new)) { if($news['hide'] == 'hide') $strhide = "<a title=Отобразить href=news.php?lc=shownews&id-news=".$id."><b>Отображать</b></a>"; else $strhide = "<a title=Скрыть href=news.php?lc=hidenews&id-news=".$id."><b>Скрывать</b></a>"; } } echo ' <TR><TD COLSPAN=2> ['.$strhide.'] </TD></TR> '; Сделал так: PHP: $sql = "SELECT * FROM news"; $result=mysql_query($sql); $num_results=mysql_num_rows($result); for ($i=0; $i<$num_results; $i++) { $row=mysql_fetch_array($result); $id=$row["id"]; $strhide=$row["hide"]; if($row['hide'] == 'hide') {$strhide = "<a title=Отобразить href=news.php?lc=shownews&id-news=".$id."><b>Отображать</b></a>"; } else {$strhide = "<a title=Скрыть href=news.php?lc=hidenews&id-news=".$id."><b>Скрывать</b></a>"; } echo ' ['.$strhide.'] '; }
Вообще да, но админке это не нужно... Потому что она все равно будет закрываться от сканирования... Для контента - согласен с тобой полностью