это может быть вопрос без ответа, но ...PHP: хранить переменные/функции/session_start в одном файле include?
В классическом ASP у меня был прекрасный файл с надписью в верхней части каждой страницы. Мало того, что у него есть основной шаблон html для верхней части страницы для каждой страницы на сайте ... в нем также были ключевые переменные, такие как строка подключения dbase, полезные функции и различные переменные, которые в случае изменения распространялись бы через весь сайт. Я просто должен был включить его в верхнюю часть каждой страницы сайта, и он дал мне единообразный вид и доступ ко всем вещам. Лучшая часть ... ASP позволяет мне делать перенаправления ниже после того, как html был отправлен в верхний файл include, например, после успешного входа в систему, отправки формы или другого действия пользователя.
Теперь я изучаю PHP (все еще нуб). Кажется, нет простого способа сделать переадресацию после отправки html с ошибкой header.php. И некоторые вещи, которые вы хотите на каждой странице, например session_start(), должны появиться перед любым html. Поэтому я мог бы включить html-free в начало каждой страницы с общими функциями, строками и вызовами, такими как session_start в начале. Но, похоже, нет простого способа сохранить красивый html-шаблон для верхнего, если я хочу сделать перенаправление на основе определенных условий ниже, то есть успешного входа в систему. Я бы поставил код перед html и бросил все это в файл top-include, если не для проблемы с перенаправлением.
Есть ли наилучшая практика для сохранения начала сеанса в первой строке каждой страницы и использования другого кода с использованием общего шаблона html и сохранения способности делать переадресации.
В противном случае, если редирект всегда должен быть перед любым HTML послал, то HTML не могут быть включены в один файл в верхней части сайта, но должен быть установлен ниже код и любые редиректы на каждой странице ...
Спасибо за любые предложения по передовой практике от опытных рук PHP.
Похоже, ваш сайт достиг точки, в которой у вас много кода презентации (HTML), смешанного с вашей бизнес-логикой (PHP). Хотя ваши проблемы, безусловно, разрешимы без большой боли (хотя мы не можем вам помочь, не видя ваш фактический код), вы должны рассмотреть возможность разделения бизнес-логики на организованные классы и только наличие HTML в файлах «view» или «template». Это называется [разделение проблем] (http://en.wikipedia.org/wiki/Separation_of_concerns) и является очень распространенной передовой практикой. –