Ошибка при разбивке результата запроса на страницы.

Статус
В этой теме нельзя размещать новые ответы.

lawko

Новичок
Ошибка при разбивке результата запроса на страницы.

Создаю запрос к БД, содержащийся в скрипте. Получаю результат, разбитый на страницы. Всё прекрасно работает. Но, если в "тело" самого запроса вставляю переменную. передаваемую скрипту с другой страницы, то происходит следующее: при загрузке страницы загружается первая порция запроса в нужном количестве строк и ссылки на следующие порции выбранных данных, но при попытке перейти по ссылкам на следующие страницы, получаю ошибку "Undefined index: *** in... ". Получается, что скрипт видит переменную *** только при первом обращении с переменной, переданной при помощи GET или POST, а дальше он её теряет. Помогите привязать переменную ко всем страницам запроса. Запутанно объясняю, наверное, но может кто-нибудь поймёт. Образцы положил сюда http://evkot.od.ua/problema.html, а если коротко, то вот так работает
PHP:
$1 = "select * from tufta where tufta_name like 'Good%';";
$rs = new MySQLPagedResultSet($1,20,$cnx);
, а так - нет:
PHP:
$1 = $_POST["***"];
$2 = "select * from tufta where tufta_name like '$1';";
$rs = new MySQLPagedResultSet($brands,20,$cnx);
 

lawko

Новичок
Я жутко извиняюсь, но нельзя ли указать на конкретную ошибку? Я, к сожалению, не понял, причём здесь слеши, которые, как указывает фак, нужны при использовании спецсимволов и кавычки, которые, по моему мнению, у меня расставлены верно. Переменная содержит всего одно слово. И, если есть ошибка, то почему первое обращение к скрипту возвращает правильный результат, а дальнейший переход по ссылкам выдаёт ошибку или чистый лист, если установить более слабый контроль ошибок? Спасибо.
 

Фанат

oncle terrible
Команда форума
Да, Света, что-то ты как-то не в ту тему, по-моему.
Хотя, может, я чего не увидел, за другими косяками.

lawko
прочитай внимательно мой ответ.
И не торопись отвечать.
Получается, что скрипт видит переменную *** только при первом обращении с переменной, переданной при помощи GET или POST, а дальше он её теряет.
Ответ, почему так происходит, и что надо делать, находится здесь: PHP FAQ: Самые основы. Как работает PHP.

ещё раз такое напишешь - прибьём.
 

SelenIT

IT-лунатик :)
lawko
В какой переменной у тебя строка запроса во втором примере? $2? (такого быть не может, но раз уж написано...)
А какую переменнную ты подставляешь при создании объекта? $brands?
А как бедный PHP догадается, что между этими переменными есть какая-либо связь? Телепатически? ;)
 

lawko

Новичок
SelenIT
Вместо $brands у меня должна стоять $ с номером два (мне запретили писать два доллара :)). Опечатался, когда писал пример. В реале не работает так:
PHP:
$odin = $_POST["***"]; 
$dva = "select * from tufta where tufta_name like '$odin';"; 
$rs = new MySQLPagedResultSet($dva,20,$cnx);
 

Фанат

oncle terrible
Команда форума
$_POST["***"]; в реале тоже нету.
клиент был предупреждён.
тема закрыта.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху