Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Оператор сравнения


Автор: VladisOK 14.6.2007, 11:54
на странице выводиться сортировка по производителям вот таким образом:
==================================================
// start SORT
Код

echo " <table width="173" align="center" border="0">n";
echo " <tr>n";
echo " <td class=gray align=right>Производитель :</td>n";
echo " <td class=gray><select name=name onChange=location.href=this.options[selectedIndex].value >n";

$query = "SELECT id, name FROM firm ORDER BY name"; 

if($name = mysql_query($query)) 
{ 
while(list($id, $id_firm)=mysql_fetch_array($name)) 
{ 
echo "<option value="index.php?lang=$lang&p=$p&id_type=$id_type&id_subtype=$id_subtype&id_firm=$id" >" . $id_firm . "</option>"; 
} 
} else puterror("error");
echo " </select></td>n";
echo " </table>";

//end SORT
================================================
Тут нет ни каких вопросов - всё нормально.

На этой же странице выводится функция ограничения вывода на страницу товаров и организация переходов на другую страницу
код ( находится вверху страницы ):
================================================
Код

$iTotalRecords = checkQuery("SELECT id FROM wares WHERE wares.lang='$lang' && wares.id_subtype='$id_subtype'");
$page = @$HTTP_GET_VARS['page']; if(!$page) $page = 0;
$iTotalPages = intval($iTotalRecords / $DEF['PICT_PER_PAGE']) + ($iTotalRecords % $DEF['PICT_PER_PAGE'] ? 1 : 0);

================================================
ниже на странице ( после выбора сортировки ) код, ограничения вывода на страницу товаров и организация переходов на другую страницу если страниц больше чем одна
================================================ 
Код

if($iTotalPages > 1 ) {
echo "<div style='margin: 20px 20px 10px; padding: 4px 0px; border: 1px solid #DDDDDD; background-color: #FFFFFF; width: 100%;'align="center">n";
displayNav("index.php?lang=$lang&p=$p&id_type=$id_type&id_subtype=$id_subtype", $iTotalPages, $page, $DEF['PICT_PER_PAGE'], $iTotalRecords);
echo "</div>n";


===============================================

Здесь тоже всё нормально работает

Задача:
При нажатии на на сортировку по производителю
убрать "ограничения вывода на страницу товаров и организация переходов на другую страницу" и показать вывод всех товаров по выбранному производителю целиком

Решение:
В команде "оператора сравнения"
if($iTotalPages > 1 ) 
дописать сравнение типо:
if($iTotalPages > 1 && уже открыта страница сортировки по производителю и не надо запускать эту команду)

URL страницы до сортировки: index.php?lang=ru&p=4&id_type=1&id_subtype=213
URL страницы после сортировки: index.php?lang=ru&p=4&id_type=1&id_subtype=213&id_firm=27

т.е. надо дать возможность посетителю просто просматривать товары в данноц группе товаров и переходить по страницам ( это уже работает ) или при выборе сортировки по производителям показать весь список товаров относящийся к данной группе товаров целиком без перехода по страницам

Вывод:
что-то запутался - помогите пожалуйста

P.S. за ранее благодарен


Автор: sTa1kEr 14.6.2007, 12:37
VladisOK, в чем проблема? Вы же сами решение написали.
Код

if($iTotalPages > 1 && !isset($_GET["id_firm"]))

Автор: VladisOK 14.6.2007, 12:44
Спасибо sTa1kEr - всё правильно - ну знаешь бывает - клинит - скопки пропустил
if($iTotalPages > 1 && !isset $_GET["id_firm"])  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)