Люций Мунинг, если положить файлы в отдельную папку и все обращения к файлам этой папки обрабатывать в скрипте, тогда никаких проблем с безопасностью не будет... А ещё можно хранить файл за пределами публичной папки
Не показывать персональные данные, только данные о покупках.
Не просить персональные данные
При совершении покупки / выдачи доступа подписывать соглашение об обработки персональных данных.
Если вы хотите осуществить поиск по скриптам, подключенным на сайте, то в инструментах веб-разработчика есть такой поиск. В Google Chrome вызывается по нажатию Crtl + Shift + F
Самое простое - использовать бутстрап http://getbootstrap.com, стандартные шаблоны доступны на сайте, в интернете полно бесплатных шаблонов на любой вкус. Из плюсов - адаптив, что повышает выдачу в поисковых системах
Предполагаю что вы создали папку css не в html? Если так, то сервер никогда не увидит ваш файл. Если не хотите множить папки, то положите стиль вместе с index.php и пропишите путь /style.css
Что означает Категория? Может ли один врач относиться к нескольким категориям?
Дата и время разделять излишне. Вообще это может быть одним полем timestamp.
Талон - время как 1 к 1 не особо относится. Возможна ли ситуация, при которой 2 талона выписаны к разным врачам, но на одно и тоже время?
Выносите свои форычи в отдельную функцию, куда будете передавать в параметре ваш url и если $next не пустой, то эта функция вызовет сама себя с $next в параметре. Это называется рекурсия
Евгений Крамор, в целом нормально. Но лучше в RewriteRule поставить ещё и флаг [L], возможно сейчас вы не заметите разницы в работе, но в дальнейшем не придётся "искать иголку в стоге сена". Этот флаг означает что дальнейших преобразований не требуется и можно смело отдавать страницу.
В современных фреймворках используется единая точка входа, например, index.php, куда передаётся либо get-параметр (обычно route или url, но есть некоторые проблемы с возможностью передать через параметр некорректную информацию), как вы это делаете в articles и edit, или строится на основании REQUEST_URI.
Или последняя строчка:
RewriteRule ^(.*) $ index.php [L]
В index.php подключается роутер, который и будет отвечать за адресацию на сайте (в идеале, определённую в правилах маршрутизации) и определение недоступных станиц и выдачи 404, 403 и т.д. ошибок.