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


Автор: alligator 13.1.2005, 18:25
привет всем.
Мне нужно передать скрипту http://127.0.0.1/x.php?sort=1
sort=1 Еденица должна равняться к примеру data1
Вот я незнаю как мне сделать чтобы не передавать sort=data1 а передавать sort=1...7 и тд.
Блин помойму криво обьяснил ((. Ну может быть ктонибудь понял.


Автор: IZ@TOP 13.1.2005, 18:34
Если тебе надо получить в скрипте Значение sort и присодинить к строке data, то делается это с помощью знака канкантенации:

Код

$Sort = 'data'.$_GET['sort'];

Автор: alligator 13.1.2005, 18:41
Я делаю скрипт сортировки.
У меня подефолту идет сортировка по дате,а у меня в базе есть другие поля по которым я тоже хочу сделать сортировку.
Вот и я и незнаю как правильно сделать чтобы не передавать название поля в запросе и только цифру
допустим если запрос равен sort=1 то сортируем по дате ,если sort=2 то сортируем по ip
Код

SELECT * FROM ".$dbtable." ORDER by date DESC LIMIT

Автор: Mal Hack 13.1.2005, 19:07
Код

switch(  $_GET['sort'] )
{
case '1' : $sort = 'date';
...
}

Запрос вида: SELECT FROM ... ORDER BY '".$sort."'

Автор: alligator 13.1.2005, 19:13
пасиб ща заценим...

Автор: alligator 13.1.2005, 21:18
Сортировать сортирует но я хочу выставить значиние для sort если ни какие параметры не передаються , но если я выставляю се равно блин не пашет ((
Вот скрипт... где его поправить ?.
Код

IF (!isset($_GET['sort'])){
   $sort=$_GET['sort'];
}else{
   $sort='date';
};
switch($_GET['sort']=eregi_replace("/","",$_GET['sort']))
{
case '1' : $sort = 'ip';
case '2' : $sort = 'date';
case '3' : $sort = 'port';
case '4' : $sort = 'strana'
case '5' : $sort = 'gorod'
}

Автор: Mal Hack 13.1.2005, 21:25
Весь твой код заменяем на:
Код

switch($_GET['sort']=eregi_replace("/","",$_GET['sort']))
{
case '1' : $sort = 'ip';
case '2' : $sort = 'date';
case '3' : $sort = 'port';
case '4' : $sort = 'strana'
case '5' : $sort = 'gorod'
default: $sort = 'ip';
}

Автор: alligator 13.1.2005, 21:28
А блин пипец...
Еще раз спасибо. бум тестить.

Автор: alligator 13.1.2005, 21:40
Если обращаюсьна скрипт без параметров
Undefined index: sort in /usr/local/apache/data/htdocs/viewer.php on line 48
48 строка это
Код

switch($_GET['sort']=eregi_replace("/","",$_GET['sort']))

Автор: Mal Hack 13.1.2005, 21:46
Перед этим делаем проверку if(! isset($_GET['sort']) ) $_GET['sort'] = "";

Автор: alligator 13.1.2005, 21:54
Ошибка исчезла. Но теперь подстава еще лучше (((. Ошибок вообще нету и сортировка не работает smile smile

Автор: Mal Hack 13.1.2005, 21:56
Цитата(Mal @ 13.1.2005, 21:25)
case '3' : $sort = 'port';
case '4' : $sort = 'strana'
case '5' : $sort = 'gorod'
default: $sort = 'ip';

А точки с запятыми где? Вообще break; положено вставлять....

Автор: alligator 13.1.2005, 21:58
Точки с запятыми стоят..... а break ща поставим.

Добавлено @ 22:02
Всё работает спасибо за помощь.!!!!!!

Автор: penizillin 14.1.2005, 00:15
извините, а зачем eregi_replace?

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