Берем из диапазона число рандомом и кешируем его. В полночь кеш очищаем. Всё.
blik57,
Можно вызов скриптов перенести вниз - поставить <script> пеhдед </body>. Туда же перенести и вызов CSS. Но при этом в шапке надо жестко прописать основные стили и код js, чтобы сайт до загрузки этих файлов (а они могут десятки секунд грузиться на мобильном интернете) хоть как-то приемлемо отображался и функционировал.
В общем перенести вызов файлов вниз - означает серьезную переработку дизайна и логики работы сайта. По сути надо разрабатывать две версии сайта - упрощенную, но быструю, и полную, которая будет грузиться с задержкой. А также надо обеспечить бесшовное (без дёрганий и пр.) совмещение этих версий. Поэтому вам никто и не сможет предметно ответить на этот вопрос.
А просто перенести все вызовы вниз - в большинстве случаев не получится.
Будет индекс работать, будет, потому что поиск будет по LIKE "foo%".
Предположим, человек ищет категорию2 и все ее дочерние узлы. У этой категории будет ТРИ поля:
Поле - id категории,
Поле - название категории "Категория 2"
Поле - путь к категории "Категория 1|Категория 2", но лучше через id: "id1|id2"
По названию категории (Категория 2) находите ее id (id2) и путь (id1|id2), а дальше делаете запрос: LIKE "id1|id2|%" и получаете список всех дочерних узлов. В этом запросе по этому поле индекс будет работать.
Тоже самое можно сделать через промежуточную таблицу из двух целочисленных полей, но если уроней вложенности не сильно много, то луче не усложнять.
Ознакомьтесь с питоновским модулем, а потом попробуйте его аналог на ПХП:
https://github.com/chrisboulton/php-diff
---------- Добавлено 22.05.2016 в 14:44 ---------- Еще можно страницы представлять как мешки слов (без учета последовательности слов и повторов), т.е. в виде множеств слов. Потом для двух сравниваемых страниц определять отношение длины пересечения множеств слов двух страниц к длине множества слов одной страницы. Если отношение меньше определенного порога, то страницу забраковывать. Это будет грубая, но быстрая провекрка. А если же страницы проходят эту грубую проверку, то далее они отправляются на точную, но медленную проверку.
neoks, Вряд ли хеши вам здесь помогут - с ними можно проверять на полное тождество/нетождество.
Это десять сравнений в секунду. ПХП вам вряд ли поможет. В питоне к примеру есть модуль difflib, позволяющий выявлять разницу между двумя текстами, но по опыту могу сказать, что работает не очень быстро, хотя там есть несколько методов с разной точностью и скоростью. Или можно что-то с обратным индексом замутить (аля поисковая система), но опять таки у вас поиск не по короткой фразе будет, а по большому тексту, что скажется на производительности.
1) Вам выше справедливо указали на отсутствие корректных проверок на валидность входных данных.
2) Моё замечание сходу: в этом коде почему то всё свалено, как я понял, в кучу - и создание контроллера, и обработка запроса, и предметная логика: расчет площади и цены и т.д.
Если первый пункт можно легко поправить, то второй пункт практичеки неисправим в будущем.
А это что?
preg_match("/Необходимая площадь или кол-во паллето мест:<\/strong>(.*?)<br/si", $product_desc, $matches);
Смешивание представления с логикой да еще в куче разношерстного кода? А если эту надпись потребуется в будущем изменить? В логику лезть?
ЗЫ
Что касается выбора программиста, то для меня на первом месте стояло бы - подробное и качественное документирование всего и вся.
Эртэд, HTML5. Тэг <video>, через который подцепляется и проигрывается видеофайл.
BlackMesa, это самопис нужен. Лично я бы смотрел в сторону питоновских фреймворков + питоновский API к оупенофису, который понимает вышеуказанные форматы и может их конвертировать. Но насколько корректной будет конвертация майкросовтовских документов, надо смотреть.
ebitok, Он пол сайта вашего удалить требует или одну страничку? Если одну страничку и этот контент не ваш, то в чем проблема? Удалить (или заменить на другой) и забыть.
На втором сайте я не могу трафик проверить - он чужой, просто покупает у меня трафик.
Пока подозреваю, что Гугл всё же читает и как-то учитывает ссылки, полностью запрещенные к индексации, хотя в индекс их конечно не включает.
Также есть подозрение, что он сопоставляет контент источника и цели, а также поведение посетителей.
Больше всего напрягает, что по таким запросам мой сайт (или наоборот второй) не просто понижаются в выдаче, а полностью выкидываются из выдачи, т.е. показывается один из сайтов по конкретному запросу (по очень многим, но не по всем).