Newn, если надо загрузить сперва страницу, то почему бы не вынести цикл в JS, слать фоном запрос на сервер, на сервере чисто проверять есть ли файл и отвечать true/false и соответственно обрабатывать ответ на JS.
Юрий Смит, если на сайте разные типы страниц есть, они должны как то разделены быть в урл. Необходимо передавать так или иначе информацию для их различения.
Если у вас только категории и статьи и категория обозначается числовым айдишнком, то можно еще разделение по этому принципу попробовать.
xmoonlight, хм... пара вариантов:
1. На сайте была страница, но потом ее удалили. Пользователь попадает на нее из поиска/адресной строки/с внешнего ресурса/по сохраненному линку.
2. Конкуренты/злые морды просекли что наш сервер банит все IP которые обращаются по адресу несуществующей страницы (или по типичному адресу из спам листа бота) и начали распространять в кругах потенциальных клиентов/прямо в комментах на нашем сайте/через контекстную рекламу, скрытые картинки с src ведущими на те самые адреса.
E, причем тут join? Проц грузить именно mysql? Что насчет php? Сколько по времени длится нагрузка?
"20 000 позиций, за каждую позицию аптейд 10 строк идет"
поясните, имеете ввиду что происходит 200к запросов?
А сколько по вашему процентов процессора должна занимать эта операция и почему?
caof19, все равно не совсем что вы имеете ввиду. Фактически можно передавать только данные в неком формате, нельзя передать значения переменных, потому что JS ничего не знает о переменных PHP.
JS передает данные на сервер при помощи HTTP, и может средствами того же HTTP получить что то в ответ. PHP, формируя страницу может разместить на ней некоторые данные в некотором формате, которые затем могут быть использованы JS. Вот собственно и всё варианты.
TechNOIR, то есть пользователь делает выбор из предложенных вариантов и надо этот выбор сохранить соответствующим образом?
Для решения необходимо реализовать php скрипт, который будет принимать 2 значения:
- слово из первого столбца,
- значение для второго столбца
Соответственно понадобится написать логику для нахождения нужной строки по слову и записи значения. Вероятно проще будет использовать БД (чем csv файл), тогда объем логики значительно сократиться. Экспорт из БД в csv можно будет реализовать отдельным скриптом.
Значения можно передать в скрипт в get параметрах URL, например так: /scriptName.php?key=слово&value=значение
(но правильнее каждому слову присвоить уникальный id и передовать его в качестве key)
То есть, при клике пользователя по кнопке необходимо сделать запрос вышеприведенным образом к скрипту сохранения значения. Запрос можно сделать прямым переходом по такой ссылке или, если требуется выполнить это действие не покидая страницы и не открывая новых вкладок, при помощи AJAX запроса.
matveyvarg, паждите паждите... зачем деплой? Вы должны работать с файлами на основной машине, мапинг настраивается в yaml конфиге вагрантовском, далее всё работает автоматически. То есть изменения в указанных папках автоматически происходят и на виртуальной машине.
Moskus, я это не утверждал, я сказал что он может быть приспособлен имея ввиду что если выбор из не предназначенных для этого сервисов (из расчета на бесплатность) то лучше попробовать с одним из приведенных. Они надежнее и имеют API.
Ilshat Gayanov настройки, которые должны производятся через веб интерфейс сайта и относящиеся ко всему сайту, должны, как правило, храниться в вашем основном хранилище данных, например в бд. Нет совершенно никакой проблемы, в том что их надо получать каждый раз. Даже кешировать не обязательно.
Что то типа https://1cloud.ru/services/storage
ищите по запросам файловое хранилище для сайта и тп. Так же под эти цели можно приспособить сервисы вроде яндекс.диск, дропбокс,... Но сперва надо убедится, что вы попадаете в их ограничения и не возникнет проблем из за объема трафика или количества обращений.
Вам стоить почитать правила Тостера. Один вопрос в одном вопросе, и уж точно не должно быть вопросов в форме ответов. Т.е да, вам надо создать новый вопрос иначе в общем то никто его не увидит. Я заметил совершенно случайно.