alt_aut переменное число параметров

hrulik
Posts: 495
Joined: Sat Apr 14, 2012 7:06 am

alt_aut переменное число параметров

Post by hrulik »

Хотелось бы немного изменить логику работы alt_out чтобы можно было передавать переменное число параметров. Имею ввиду следующее, если в alt_aut пишем: /ftt2/o.php?u={URL}&g={G}&s={S}
если выставить все три переменные, то все сработает как надо, но вот если не передать переменные
"s" и "g" то внешнему скрипту они передадутся все равно вот так: /ftt2/o.php?u="наш урл"&g={G}&s={S}
а надо чтобы было просто /ftt2/o.php?u="наш урл", т.е. надо чтобы не выставленые переменные не передавались.
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: alt_aut переменное число параметров

Post by admin »

Можно заменять на пустое значение если оно не указано, а совем убирать смысла думаю нет - будут пробелмы с возможным обрезание лишнего в урл плюс невозможность передать пустой параметр.

Этот вариант подходит?
Don't forget to run script update
hrulik
Posts: 495
Joined: Sat Apr 14, 2012 7:06 am

Re: alt_aut переменное число параметров

Post by hrulik »

Не уверен что так сработает, надо попробовать, отпишусь позже
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: alt_aut переменное число параметров

Post by admin »

ok
Don't forget to run script update
hrulik
Posts: 495
Joined: Sat Apr 14, 2012 7:06 am

Re: alt_aut переменное число параметров

Post by hrulik »

нет не катит такое решение к сожалению, вот автор скрипта ответил:
>вопрос, если параметры передавать вот так /ftt2/o.php?u=[какойто урл]&s=&g=
>как скрипт на такое сработает? так же как на /ftt2/o.php?u=[какойто урл]?
>нет. Как /ftt2/o.php?u=[какойто урл]&s=0&g=
>группа будет empty(g это группа)
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: alt_aut переменное число параметров

Post by admin »

Так а пустая группа и отсуствие парамтера граппы это не одно и то же ?

Если нет тогда вариант как обычно

o.php переименовываем например в o_orig.php

и делаем o.php

<?
убираем из урла что не надо и в целом меняем урл как угодно
include('o_orig.php');

и будет работать в любыми заменами.
Don't forget to run script update
hrulik
Posts: 495
Joined: Sat Apr 14, 2012 7:06 am

Re: alt_aut переменное число параметров

Post by hrulik »

это надо $_SERVER['QUERY_STRING'] редактировать, как это сделать? и вообще возможно ли?
мне кажется это проще при формировании альт_аут делать, нужно будет только соблюдать правило, переменная должна так же называтся, т.е. g={G}, url={URL}
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: alt_aut переменное число параметров

Post by admin »

Да, $_SERVER['QUERY_STRING']
как и любую дургую переменную просто присваиваете значение как надо.

Да, можно как угодно редактировать там, включая описанный вами алгоритм.
Don't forget to run script update
hrulik
Posts: 495
Joined: Sat Apr 14, 2012 7:06 am

Re: alt_aut переменное число параметров

Post by hrulik »

вот накидал на досуге, удаляет из строки только переменные значеие которых равно имени в фигурных скобках, например: v={V}, регистронезависимо

Code: Select all

parse_str($querystring,$query);

foreach($query as $key => $val){

    if (strcasecmp('{'.$key.'}', $val) == 0)
        continue;

    if (isset($newquerystr)){
        $newquerystr .= "&".$key.'='.$val;
    }else{
        $newquerystr = $key.'='.$val;
    }
}
echo $querystring."\n";
echo $newquerystr."\n";
А с редактированием _SERVER["QUERY_STRING"] оказалось всё сложно, поэтому прошу вставьте код в апдейт
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: alt_aut переменное число параметров

Post by admin »

Что именно сложно ?
Don't forget to run script update
Post Reply