Veseloff
Moderator-
Posts
3,457 -
Joined
-
Last visited
-
Days Won
40
Content Type
Profiles
Forums
Calendar
Store
Everything posted by Veseloff
-
С одной стороны да, вордпрес и создавался как система для блогов. С другой стороны он реально жукто тяжёлый и тормозной, особенно, если заводить туда плагины. А с третьей стороны, если у вас хитов меньше 1 в секунду (то есть меньше 80000 в сутки), то и фиг с ним — сервер вам это простит. А моя система гибкая, да — если надо чего-то приладить, то берёшь и прилаживаешь вручную, никаких плагинов, расширений, абстракций — только суть. Зато на слабеньком сервере легко держит 10 хитов в секунду без кэширования. С шаблонным кэшированием в связке с nginx держит до 1000 хитов в секунду. Не пробовал ещё сделать связку nginx — memcached для быстрого выплёвывания шаблонов, но, думаю, это может ещё ускорить работу.
-
Да ладно? У него все уроки состоят из такого говнокода. Я не берусь говорить, что Попов придурок или кретин, как это может показаться. Он скорее даже большой молодец: зарабатывает, думаю, он нормально на своих убогих и унылых видео, а так же устраняет конкурентов, ибо мне, например (как, вероятно, и ему) адепты Попова не конкуренты вообще.
-
Вот вордпресс как раз громоздкий и тормозящий, а друпал вполне хорош для всего — в том числе и для блогов. Лично я использую свою систему — она быстрая и нет в ней ничего лишнего.
-
Ахахах! Вы бы ещё сказали, что я время тяну, чтобы сделать сортировку пузырьком. Я практически такую же задачу даю на собеседовании, так что решение у меня точно есть. Вот, например, от одного из претендентов решение задачи на питоне — не самое лучшее, но рабочее ? import MySQLdb db = MySQLdb.Connect(host="localhost",user="username",passwd="password",db="TOAST") cursor = db.cursor() baseQuery = "SELECT * FROM comments WHERE PARENT = " def getChildren(currentID): query = baseQuery + str(currentID) + ";" found = cursor.execute(query) if found == 0 : return None currentLevelComments = {} results = cursor.fetchall() for i in range(len(results)): currentComment = results[i] currentCommentID = currentComment[0] currentCommentParent = currentComment[1] currentCommentAuthor = currentComment[2] currentCommentText = currentComment[3] currentCommentDict = {} currentCommentDict["ID"] = currentCommentID currentCommentDict["Parent"] = currentCommentParent currentCommentDict["Author"] = currentCommentAuthor currentCommentDict["Text"] = currentCommentText children = getChildren(currentCommentID) if children != None: currentCommentDict["Children"] = children currentLevelComments[currentCommentID] = currentCommentDict return currentLevelComments comments = getChildren(0)
-
Отнюдь. Просто сейчас качество программистов падает, а так быть не должно. Чтобы так не было, надо учиться. Давайте так — вы сделаете свой вариант, а потом я покажу как бы сделал я.
-
И на какую же, если не секрет?
-
Я показывать не буду и другим не советую. Это очень интересное задание и, если топикстартер поймёт как это делается, то это добавит ему стопицот к скиллу программиста. Как это делается я уже достаточно подробно объяснил. Можно, конечно, сразу заполнять дерево, но в два массива будет нагляднее. Подчерку ещё раз, что заполнять надо ссылками.
-
Тогда делаем запрос SELECT * FROM `tablename` ORDER BY `parent` ASC, `id` ASC Собираем все данные в массив по порядку. Создаём новый массив, в котором будем делать дерево. Далее циклом foreach проходимся по первому массиву и ссылками создаём дерево во втором массиве. Задача решается линейно, никак не рекурсией. Я такую задачу на собеседования даю
-
Скорее первая функция должна удалять класс tet, поскольку он даёт блоку «display: none»
-
Ну вот уже другое дело. Поле id — auto_increment?
-
Что такое рекурсивный массив? Какой результат нужен?
-
Бред какой-то — я ничего не понял. Давайте ссылку на страницу.
-
Можно более подорбные условия задачи?
-
http://www.htaccess.net.ru/doc/Redirect/Redirect.php http://phpclub.ru/detail/article/regexp_1 http://phpclub.ru/detail/article/regexp_2
-
Благодарю. Надо будет взглянуть.
-
Вот ведь развели Я, например, говорю «на Украине», потому что мне так нравится. Поскольку нет однозначного правила, касающегося того, как правильно говорить, а весомые аргументы есть как у той, так и у другой стороны, то я не буду переучиваться и буду говорить как привык. И хотя «в Украине» коробит мой слух, я никому не делаю замечаний и ни с кем не спорю по этому поводу. Хотя, если честно, если и придумают правило говорить «в Украине», то я так говорить всё равно не стану, потому что считаю это неправильным, как, например, говорить йогу?рт, а не йо?гурт — надо было каким-то кретинам что-то сделать, чтобы денег отмыть, вот и за 5 минут и придумали что-то. Хотя, например, про «кофе» абсолютно согласен — можно говорить о нём в среднем роде. Что касается отношений русских и украинцев, то я считаю нелепым спорить между собой, ибо, мы по сути братья и в данный надо укреплять коренное население на своих териториях и не допускать чужаков, а вот когда уже всех прогоним, то тогда уже можно будет и между собой разобраться. Нисколько, опять же, не призываю к какому-либо геноциду и розни по цвету кожи и прочим половым признакам, поскольку считаю, что, например, русским является человек, считающий Россию своей страной, готовый защищать интересы страны и народа, который думает на русском языке и, собственно, считающий себя русским. А уж родителей не выбирают. То же касается абсолютно всех наций.
-
Вроде бы как PHP вообще не умеет работать с потоками, что, конечно, жаль. На одном ресурсе есть необходимость массового ресайза картинок. Какие я вижу варианты: 1. Делать всё через, например, imagecopyresampled, но тут такой момент, что пока функция не исполнится не запустится следующая итерация 2. Запускать какой-нибудь «пережимный» скрипт через exec('команда & > /dev/null'), но тут может создаться дичайшая очередь, процессор нагрузится на все ядра на 100% и его не отпустит, пока всё не будет пережато. Я бы хотел найти какой-нибудь компромисс между первым и вторым вариантами, чтобы больше одного потока использовалось и очередь не создавалась. В данный момент всё делается при помощи хитрого демона, который определённым образом рулит этим хозяйством, но этот вариант сейчас стал по мнногим причинам неудобным и вот я думаю как же быть. Кто-нибудь сталкивался с таким? Кто вообще что думает по этому поводу?
-
Вообще я для таких целей (и не только для этих) всегде держу nginx на фронтенде — там как-то всё более гибко и понятно. Как-то так вроде надо делать: if ($uri ~* (.+)\/+$) {rewrite ^(.*)$ http://$host$1 permanent;} Ну а в htaccess будет правило типа такого RewriteRule (.+)/+$ /$1 [L,R=301] Я вообще не очень с .htaccess дружу, поэтому могу ошибаться, но смысл такой.
-
А зачем вот так RewriteRule ([\w-]+)/([\w-]+)/$ /index.php?type=static&parent=$1&child=$2 [L] RewriteRule ([\w-]+)/([\w-]+)$ /index.php?type=static&parent=$1&child=$2 [L] Может, попробоваь это хозяйство заменить на RewriteRule ([\w-]+)/([\w-]+)/?$ /index.php?type=static&parent=$1&child=$2 [L]
-
Вы чё? Проще так, наверное: copy('http://example.com/some.jpg', '/server/some/dir/image.jpg');
-
Ничего не понятно из скриншота. Надо заполнить что ли... А лучше вообще сделайте тестовую админку, отключив в ней функций добавления и редактирования, чтобы было можно потыкаться, поизучать.
-
Если свой сайт сделан очень хорошо, то списка с примерами работ может и не быть, поскольку из сайта видно, что его создатель делает всё очень круто.
-
http://en.wikipedia.org/wiki/Email#Spelling http://www.rfc-editor.org/rfc-style-guide/terms-online-03.txt
-
Правильно писать «email» — в одно слово, без дефиса.