Есть вариант wxWidgets - те же MFC, только кроссплатформенные и с возможностью мышевозни (wxFormBuilder), но по популярности эта библиотека от Qt отстала безнадежно. То есть она еще жива, но уже совсем не мэйнстрим. Результат получается полегче, чем с кутями, но кого это сейчас волнует?
Как раз на таких теоретических задачах и стоит создать свой аналог стандартного контейнера.
Вы же учитесь? Так не делайте, как проще - делайте, как интереснее!
Да, ботнеты чаще обнаруживают не изнутри, а снаружи - по их действиям. Однако это обычно оказываются win-ботнеты, сколько бы 0-day не хранилось у Страшных Хакеров в запасе. И уж антивирусы-то от 0-day даже в виндах не защищают, хотя у них и богатая практика.
Дмитрий: Из линуксового десктопа с вайном и юзером, которому хватает глупости запускать незнакомые скрипты от рута - да, легко. Кто бы спорил. А вот из "линуксовых машинок", на которых стоит весь интернет, что-то никто ботнетов до сих пор не наделал.
Из тех случаев, когда действительно были взломы, ни одного, где взломана была бы именно система, а не стороннее ПО типа PHP, что-то не припомню.
FanatPHP: Мне просто кажется, что само по себе хранение пользователя (что классом, что массивом) в сессии - it smells. Там, заметьте, еще и аватар в тех же данных. Поэтому от того, кто так сделал, поневоле ожидаешь и забытой проверки на инъекции перед выводом...
Я не гуру и вообще, возможно, недостойный мудак, но я в таком чтении класса из сессии вижу только и исключительно способ загнать в этот класс данные в обход всех проверок на XSS и прочие инъекции. Поэтому постарался бы не решать поставленную ТС проблему, а устранить ее в принципе.
Лучший вариант юзабилити для интернет-магазина - это расположение элементов и логика, как в других магазинах. Это для покупателей.
Для продавцов лучше сделайте заметную кнопку "Помощь" с дельной инструкцией и защиту от дурака, чтобы нельзя было просто создать пустой товар, скажем. А туториал либо будет раздражать, либо его сразу, не глядя, отключат, а потом не будут знать, как запустить и посмотреть-таки.
sitev_ru: А кто вас заставляет писать на Qt? Я сам этой библиотекой ни разу не пользовался.
А вот QtCreator как С++ IDE ничуть не хуже того же Code::Blocks, например.
Вероятность ненулевая, проблемы будут лично у вас. Более чем достаточно оснований умерить энтузиазм. Особенно учитывая, что эта замена шила на мыло никому реально не впилась.
Борис Якушев: просто более опытным людям очевидно, что вы "ищете резцы", не понимая, зачем. И просите объяснения, например, переменной $_SERVER, которая подробно расписана в любой документации по PHP.
Внезапно, ВСЕ РНР-программисты МНОГО пользуются сайтами типа php.net, потому что язык такой, что проще посмотреть в руководстве, чем запоминать детали. Вот и вам нужно плотно посидеть на таком сайте, чтобы избавиться от совсем нубских проблем. Почитать статьи, посмотреть обсуждения. Разжевывать персонально для вас то, что многократно разжевано на тех же самых сайтах, никто не будет.
Борис Якушев: да, я поторопился. Когда у вас будет больше десяти файлов в проекте, и этот проект действительно будет работать - перечитайте мой флуд, может быть полезно. Сейчас рано, увы.
Влад Животнев: то есть вы ловко обходите систему контроля версий, созданную специально для того, чтобы вам не пришлось однажды выяснять, откуда прилетел данный конкретный глюк? Молодцы, что уж тут.