ARST, потому, что если Вы ориентируетесь на весь мир - держите свою CDN, иначе - как я сказал выше: загрузка происходит значительно быстрее с одного хостинга, т.к. время не тратится на резолвинг запросов DNS и все запросы скриптов - не кросс-доменные, что ускоряет работу страницы и повышает безопасность и "утечку" данных на третью сторону.
Садомазохист что ли?!))))
А если оно выберет "простенький" уровень сокобан с единственно-возможным решением за 85 шагов - прощай доступ к OS на годик-другой?)))
Muhammad, а в чём преимущество отделения переводов от пары-тройки общих полей (это 5-8 колонок максимум: время модификации, флаги состояния публикаций и т.д.)?
Muhammad, я как бы понимаю, что правильнее разносить: материалID | языкID | contentID | titleID
и для каждого ID - держать свою таблицу.
Вначале ищем по ID, возвращаемся снова, отсеиваем и т.д. прыгаем, пока не отсеем всё ненужное. Это как раз и будет 3ДНФ.
Но затраты на выборку через связи по ID - будут куда значительнее (ИМХО).
Хотелось бы для себя прояснить этот вопрос...
Stalker_RED, да, ты всё верно понял и код тот...
Просто решил на словах это максимально детально объяснить, чтобы был понятен основной принцип достижения результата.
longclaps, это может произойти только в случае, если мы будем оставлять сверху или слева такие слова, длина которых короче, чем слово над текущим или слева от текущего, соответственно.
Иначе - непонятно: как там может оказаться сегментированное свободное пространство. )
Ну здесь суть периметрального заполнения от края к центру, как я в своём ответе уже писал.
Главное - направления написания соблюдать, чтобы удобно было читать и всё.
longclaps, длинные слова - я не думаю, что будет особая разница при корректности размещения... (иногда - в этом то и смысл сложности отгадывания)
А вот про то, что я сказал - хотелось бы увидеть наглядно: как там и что ловится...
(пока - не могу сам представить и смоделировать...)