Проверка URL на нежелательные символы не работает на хостинге

sharomet

Новичок
Всем привет!
У меня такой вопрос.

У меня есть класс Security в котором описан метод
Код:
public function checkUrl($url){
        for($i=0;$i<count($url);$i++){
            $a[$i]=mysql_real_escape_string(addslashes($url[$i]));
        }
        return $a;
    }
так как урл является массивом я прогоняю каждый его элемент в цикле через mysql_real_escape_string так как некоторые запросы на прямую связаны с бд - к примеру получение данных через id (Не знаю правильно ли я поступаю или нет)

затем в роутере я описываю этот метод с помощью вот такова способа

Код:
$url=Security::checkUrl($url);
Вся проблема в том что на локальной машине это работает а вот на хостинге нет(
В чём тут может быть проблема? Спасибо!
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Вот только к секьюрити это не имеет никакого отношения. Проблема в том, что надо включить вывод ошибок, для начала.
 

riff

Новичок
Ответ выше, а это просто к слову:

урл является массивом я прогоняю каждый его элемент в цикле
for($i=0;$i<count($url);$i++)
на локальной машине это работает
Именованный массив через for. И ты говоришь работает?

это чтоб уж наверняка? )
 

sharomet

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

public function checkUrl($url){
$a=array();
foreach($url as $elem)
$a[]=mysql_real_escape_string(addslashes($elem));
return $a;
}
так тоже самое

Именованный массив через for. И ты говоришь работает?
На локальной машине, да
это чтоб уж наверняка? )
ага)
 
Последнее редактирование:

sharomet

Новичок
Ну так а почему на локальной машине всё это работает?

Код:
public function checkUrl($url){
        $a=array();
        foreach($url as $key=>$elem)
            $a[$key]=mysql_real_escape_string(addslashes($elem));
        return $a;
    }
Вот с ключем так тоже не работает
 
Последнее редактирование:

sharomet

Новичок
mysql_real_escape_string не работает потому что я использую PDO
А как же тогда экранировать данные?
 
Последнее редактирование:

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
sharomet, данные надо "экранировать" через подготовленные выражения, то есть использовать плейсхолжеры
 
Сверху