В настоящее время я придумываю систему, позволяющую использовать систему онлайн-голосования для моей старой школы (действительно, церемония награждения). Из-за ограниченного школьного совета я могу гарантировать, что MySQL не будет возможностью хранить голоса. Я также предполагаю, что если голоса будут храниться в локальных файлах, данные будут перезаписываться, когда файл вызывается несколько раз в одно и то же время (что является большой вероятностью).
Кто-нибудь есть какие-либо предложения относительно того, как я мог бы пойти по этому поводу? Предпочтительно решение на основе PHP с учетом ограничений школьного совета. Пожалуйста, обратите внимание, что данные должны быть доступны только в течение нескольких часов на постоянно работающем веб-сервере, поэтому, если данные похожи на RAM (из-за отсутствия лучшего термина), это будет хорошо.
Хотя я испытываю искушение отклонить предпосылку вопроса, как это делают некоторые комментаторы, вот ответ (я беззастенчиво пытаюсь заработать 200 репутации, чтобы помочь запустить новый сайт):
Напишите функцию recordVote, которая сохраняет каждый голос в своем файле в каталоге используя уникальный идентификатор в имени файла (У PHP нет гарантированной выдачи действительно уникальных идентификаторов GUID на всех платформах, поэтому используйте что-то вроде https://gist.github.com/dahnielson/508447).
После закрытия опросов запустите процедуру tallyVote, чтобы скомпилировать количество голосов, прочитав все файлы в каталоге.
Других решений пока нет …