Вы не зашли.
Что тут некорректно?
public function utf ($str) {
return htmlspecialchars($str, ENT_QUOTES);
}
mysql_result($sql, $this->_link, $value); - снес функцию.
return mysql_real_escape_string(trim($str));
почему не используется ресурс соединения с БД?
Исправлено.
Еще не корректно?
почему htmlspecialchars называется utf? тем более что ты там даже не указываешь кодировку для htmlspecialchars и по умолчанию она ISO-какая-то там.
mysql_result - посмотри синтаксис этой функции и сравни с тем, что ты ей передаешь
ну и повсюду sql injection проходит. твой htmlspecialchars/utf никак не защищает тебя от sql injection, тебя защитит только mysql_real_escape_string
перед занесением данных в БД обрабатывать их с помощью htmlspecialchars не нужно. htmlspecialchars применяется перед самым выводом данных пользователю. т.е. в echo, print и т.п. (для простоты понимания)
А название играет роли? О_о
Потому что я так превык, называть функцию utf.
mysql_real_escape_string использую при записи в БД, а при выводе: "htmlspecialchars".
Я не заношу в бд фильтруя htmlspecialchars()
ENT_QUOTES экранирует ковычки, sql inj не прокатит
Добавлено спустя 5 минут 46 секунд: Кхмм.. если ты про фильтрацию USERAGENTA то убрал
Отредактировано @Office (2010.08.07 19:07)
@Office, а нулл байты или обратные слеши он фильтрует? экранируй с помощью mysql_real_escape_string и не выдумывай велосипедов
стандартизация кода это очень важный момент, если ты привык к utf, то это не значит что это правильно и так делать надо. нарушая стандарты кодирования, ты тем самым гробишь проект в плане расширяемости. во многих конторах код не считается принятым пока полностью не прокомментирван и оформлен в соответствии со стандартами.
Геморрой, для тебя конечно код простой
(в рифму получилось)
Автор счетчика, не точный он у тебя будет с переходами, скорее всего...
Добавлено спустя 4 минуты 18 секунд: Потому, что после 3х минут юзер с базы удаляется, отсюда следует и неточность. Вдруг он подаст признак присутствия на сайте после 3х минут, а его переходы уже по-новой будут считаться...
Отредактировано tipsun (2010.08.07 20:08)
tipsun, внимательно код смотри, не удаляются записи.
Если он вдруг зайдет, переходы будут продолжаться.
Gemorojj, Т.е ты хочешь сказать при выводе mysql_real_escape_string использовать? О_о
Я при записи, использую его, а при выводе htmlspecialchars, а насчет utf(), у тебя есть более наилучший вариант названия функции?
Покажи, может превыкну к нему. Незнаю, как только ознакомился с функциями, начал юзать utf..
Отредактировано @Office (2010.08.07 22:10)
Автор счетчика, извиняюсь. Увидел
посчитать всех, у кого время больше лимита, таким же запросом и выводим... Мда, всё продуманно...
@Office написал:
Т.е ты хочешь сказать при выводе mysql_real_escape_string использовать?
совсем нет, где я такое говорил?
Я бы лично htmlspecialchars вообще не выделял в отдельный метод.
Хз, геморой. Привык делать так, не считаю ошибкой
Всеравно, спасибо за совет.
Gemor, еще вопрос, стоило ли тут использовать такое мего OOP? :-D
Отредактировано @Office (2010.08.07 23:11)