Счёт один. т.е. делать поле где статический при каждой операции баланс будет обновляться, при этом для вывода текушего баланса не потребуется перечитывать записи и сразу выводить да?
А если несколько счётов надо что бы было, тогда создать ещё таблицу счётов и там перечислять счета и связать всё это JOIN-ом?
В отдельной таблице счет и пользователь должны лежать в любом случае, это же разные вещи ... как у пользователя может не быть счетов (их может быть несколько), так и счет можно привязывать не к пользователям (благотворительный фонд или акция не будут являться пользователями на вашем ресурсе, но будут иметь счет)
У счета есть текущий баланс - по сути это горячий кэш агрегации всех транзакций по нему. Изначально счет создается с нулевым балансом, потом к нему привязываются транзакции, при каждой привязке транзакции ты меняешь значение текущего баланса. Итого таблиц у тебя 3: пользователь, счет, транзакция по счету + таблицы связей (Добавление)
думаю, не стоит говорить, что все операции с счетами и платежами должны еще и логироваться и проходить внутри транзакций бд?
У вас есть веб-сервер (апач или nginx - не важно), у него есть конфигурация DocumentRoot - рутовая директория доступная по http, все, что лежит в ней, доступно для отдачи веб-сервером.
Ну например если в настройках DocumentRoot = /opt/myFirstSite/wwwRoot
то на сервере папки как-то так выглядят:
/opt/myFirstSite/wwwRoot/index.p hp
/opt/myFirstSite/wwwRoot/css/main.css
/opt/myFirstSite/wwwRoot/js/jque ry.min.js
Соответственно все, что должно исполняться (все ваши классы, модели, весь php код) должен быть уровнем выше - в папке /opt/myFirstSite/application , например
Конструктор - это метод, вызываемый при создании экземпляра класа для его начальной инициализации (тедди, конечно, написал кейс создания экземпляра класса без вызова конструктора через ReflectionClass, но это нельзя рассматривать как обычную практику). Если вам нужен метод, который то вызывается, то нет - напишите этот метод и вызывайте когда хотите.