Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 12.06.2014, 12:24
Аватар для Duda.Ml1986@gmail.com
Профессор
Отправить личное сообщение для Duda.Ml1986@gmail.com Посмотреть профиль Найти все сообщения от Duda.Ml1986@gmail.com
 
Регистрация: 01.09.2011
Сообщений: 263

Обработка допустимых $_GET
Всем привет.

Есть сайт на котором все ссылки вида mysite.com/yyyyyyyy
То есть если что то вдруг такое mysite.com/yyyyyyyy/ или такое mysite.com/yyyyyyyy/ххххх

То 404 ошибка

Но вот незадача. Есть страницы наборов типа mysite.com/yyyyyyyy/page1...n

Для того что бы их обрабатывать делаю проверку типа:
$acceptIndex = unserialize (INDEX);

!in_array($this->index, $acceptIndex)

$this->index хранит как раз часть урла (THIS_PART) mysite.com/THIS_PART

а хранятся слова так:
define ("INDEX", serialize (array ("news", "doctors")));


Короче все классно, но как сделать так что бы например я сделал тот же массив и для GET вида

mysite.com/?search=YYYYY
mysite.com/?404

Не хочу их писать руками, а то условия будут на пол страницы)

Благодарен за любую мысль.
Ответить с цитированием
  #2 (permalink)  
Старый 12.06.2014, 12:50
Аватар для Duda.Ml1986@gmail.com
Профессор
Отправить личное сообщение для Duda.Ml1986@gmail.com Посмотреть профиль Найти все сообщения от Duda.Ml1986@gmail.com
 
Регистрация: 01.09.2011
Сообщений: 263

/* Проверка наличия ключевого слова по массиву определенных значений */
    protected function checkGetIncluding() {
        $acceptGet = unserialize (GET);

        foreach($acceptGet as $index => $get) {
            if(isset($_GET[$get])) {
                return true;
            }
        }
        return false;
    }


&& ! self::checkGetIncluding()


define ("GET", serialize (array ("404", "search")));


Может лучше что прийдет в голову?
Ответить с цитированием
  #3 (permalink)  
Старый 12.06.2014, 23:03
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

function compliance($x = array(), $externalData)
    return array_intersect_assoc($x,  $externalData) == $x;
}

и соответственно примеры. 1 аргумент - значение - массив условий, второе где проверяем. Результат True если все условия из массива находятся в, $externalData, иначе False
if(compliance(array('option'=>'com_content', 'view'=>'article'), $_GET){}
if(compliance(array('page'=>'1'), $_POST){}

Последний раз редактировалось Vlasenko Fedor, 13.06.2014 в 00:17.
Ответить с цитированием
  #4 (permalink)  
Старый 11.07.2014, 11:43
Аватар для Duda.Ml1986@gmail.com
Профессор
Отправить личное сообщение для Duda.Ml1986@gmail.com Посмотреть профиль Найти все сообщения от Duda.Ml1986@gmail.com
 
Регистрация: 01.09.2011
Сообщений: 263

очешуенно
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обработка ajax ошибок Tek Angular.js 5 15.05.2014 14:10
Обработка нажатия на элемент и его родитель klev2004 Общие вопросы Javascript 3 12.12.2012 20:07
jQuery, pjax и обработка форм artemeff Общие вопросы Javascript 0 01.02.2012 14:34
jqGrid. локальная обработка данных DarkN jQuery 0 25.01.2011 23:55
Обработка фото сервером. mycoding Оффтопик 0 12.10.2010 22:45