Еще можно автоматически фокус полю ввода ставить
и убрать галочку со смайликов по умолчанию в настройках.
Или ставить эту галочку автоматически при нажатии на изображение смайлика сбоку.
Или просто не парсить смайлики в коде, совсем.
Прием данных.
Никаких magic_quotes, автоматических добавлений всяких слэшей и прочей галиматьи.
Обработка данных
Числовые данные сначала преобразаую инвалом, потом проверяю на отличие от нуля.
Порой даже не проверяю на их присутсвие, если они там должны быть.
$id = @intval($_POST['id']); if(!$id) throw ..
имейлы проверяю регуляркой + на сопутсвующие mx записи во избежании ввода несуществующих адресов.
Иногда пользуюсь фильтрами валидации (validation filters)
Никогда и не при каких условиях не изменяю вводимые данные ( никаких стрип тагс, стриптиз, санитайз фильтров и любых других преобразований.
Ввод данных в БД
Любый строковые данные обязательно подвергаются обработке mysql_real_escape_string или чем-то подходящим для вашей конкретной БД.
Даже если мы 3 раза проверили имейл регулярками.
Всегда строки в запросах заключаются в кавычки.
Числа тоже, хоть mysql их и преобразовывает.
Все числа вводятся только после intvala (который я выполняю на этапе приема данных)
Вывод из БД
Любые данные из БД выводятся после обработки htmlspecialchars( , ENT_QUOTES);
Ресурс ( Resource )
Ресурс представляет из себя указатель, ссылку, на внешний ресурс.
Представим автосервис с большим количеством машин, где им заливают масла в двигатель. Со свистом тормозов из подворотни вылетает феррари и паркуется на очередной сервисной парковке. Хозяин сервиса уже кричит рабочему, залить 5 литров масла и тычет большим пальцем в красную феррари.
Наш рабочий получает в данном случае два типа данных - число (литров масла) и указатель на машину, то-есть определение - какому именно объекту из всех вокруг нужно подлить чего-нибудь.
Подмечу, что рабочий получает от босса вовсе не саму машину, а лишь дескриптор (указатель) машины с которой предстоит работать. В php этим дескриптором является тип данных resource.
Это примерно значит что PHP получил из базы все данные и поместил их в память.
А данных там много и они все разные.
Что с ними делать и как вывести значения поля?
Открыть документацию по php и поглядеть. http://php.net/mysql
Нет, нам не сложно сказать, но Вы по каждой строчке обращаться на форум собираетесь ?
Если Вы хотите чтоб другие пользователи могли увидеть сколько у него здоровья в каждую единицу времени, придетеся записывать в базу. Если не хотите, то можно пересчитывать каждый раз по данным из сессии к примеру, тем не менее в базе хоть что-то хранить придется.
Уже ближе к концу праздничное недели могу и я присоединиться с наилучшими поздравлениями.
Всем пожелаю удачных проектов, качественных скриптов, красивого кода и продуктивного года. Про личную жизнь, физкультуру и туризм не забывать, друзей, любимых и клиентов всегда уважать.