Евгений , Проверка работы, Адрес IP- 127.0.0.1, Content-type: text/html; charset=windows-1251 From: test To: Евгений Subject: Проверка работы
Ну и плюс к этому нотайс о headers почему то.
Привет всем. Помогите разрулить ситуацию. При отправке письма через денвер (на серваке не пробовал) в заголовках письма в полях "От" и "Кому" дважды пишет одно и тоже. Например "От" Дмитрий, Дмитрий "Кому" Евгений, Евгений. Тема письма в одном экземпляре слава богу . А тело письма отсутствует напрочь. Почтовик The Bat. Пробовал в нём включить отображение заголовков, вроде всё норм, есть и тело письма и всё остальное в норме. Привожу 2 файла (ф-я запускается из третьего файла, там ничего интересного нет, поэтому не буду его приводить).
Коротко сказать же не получится, верно? Но я попробую дать направление.
Огромное спасибо за такой развёрнутый ответ. Хотел нажать "спасибо", да не могу, слишком мало сообщений на форуме. Правда из всего этого я не смог понять практически ничего, как не старался К тому же, вот "Вид". У меня шаблон для всех страниц один на данный момент, в нём есть контейнер (div) для вывода контента. Т.е более для вида я ничего не применяю. В общем не понимаю я ничего к сожалению (Добавление)
Budulianin пишет:
1028 страница
Спасибо. Примерно такую структуру я и представлял. Но опять же, дойдя до активных и пассивных шаблонов я в ступоре. Сколько всего надо запоминать просто нет слов. Например для страницы index.php я ещё может быть и сделаю что то похожее, но как оно будет выглядеть для всех остальных страниц я ума не приложу.
По МВЦ. Он подразумавает, что ваше творение разделяется на 3 части:
Вот это как раз я примерно понимаю. Я не могу понять как мне приведённую в примере страницу разбить на такие модули. К тому же страница то не одна будет. Всё запутано как то в MVC, но понять надо всё равно
Как советовали на phpclub.ru, лучше изучить структуры мини MVC фреймворков php, постепенно перелазя на нечто большее, ZF например, а тут и прозрение придет.
Т.е Вы хотите сказать что без изучения фреймворка хоть какого нибудь, понять MVC не возможно в принципе?
По данной ссылке я уже читал. Да, там нет фрейворков, согласен. Но там проблема немного в другом. Вернее это проблема уже во мне. Мне не понятен код, приведённый в указанной статье, поэтому я не могу понять как он работает и для чего он там вообще.
На счёт книги Котерова, она есть у меня, но там много "воды". По крайней мере для меня. Но всё равно, спасибо, буду искать значит в ней ответ на свой вопрос.
Приветствую всех. Несколько дней ищу ответ на свой вопрос, но увы нигде ничего дельного я не нашёл. Извините, если создаю существующую тему.
В общем заинтересовался я созданием сайта по технологии MVC, т.е. созданием модульного сайта, чтобы "Вид" был отдельно, "Контроллеер" отдельно и так далее. Прочитав уйму статей на данную тему я не понял ровным счётом ничего. На какой сайт не зайду, везде что то типа MVC и ASP.NET, MVC и какой либо фреймворк. Не нашёл ни одного толкового сайта, где бы рассказали как без всяких готовых фреймворков и движков создать свой сайт по технологии MVC. Я категорически не воспринимаю ни движки, ни фреймворки и всё остальное. Я хочу научиться писАть сайт с нуля САМ, а не лепить его из готовых блоков как конструктор.
До настоящего времени я писАл примерно такие страницы:
Вот к примеру страница index.php. Я хочу выводить на ней что либо типа приветствия. Текст для этой страницы берётся из базы. Весь код страницы написан в одном файле (вернее не совсем в одном, а хедер, навигация и футер разделены по разным файлам и рекурятся в файл index.php + к этому подключается файл CSS и файл с пользовательскими функциями, ну и файл соединения с БД конечно же.) Итак получается что вверху файла подключается хедер (т.е HTML код), далее
идёт блок PHP, создаётся запрос к базе, берётся инфа, после чего блок закрывается и снова идёт HTML код с встроенными php переменными для вывода данных из базы. Ну и в конце файла подключается футер. В общем всё примитивно.
Помимо этого например есть страница для "обратной связи". Тут вообще чёрт ногу сломит.
Страница message.php (обратная связь) состоит из: подключенного хедера и навигации, далее идёт блок PHP, в нём расположен обработчик формы. После этого блока идёт HTML код с формой. Ну и после неё подключается футер.
Я понимаю, что то что я написал это как говорится "вилами по воде", нужен сам код этих
страниц, но у меня их нету, я просто описАл так, как делал всегда до этого.
Теперь собственно сам вопрос. Как мне сделать тоже самое в виде модулей? Чтобы я мог
отдельно редактировать к примеру форму, обработчик, ну и так далее, чтобы не копаться в груде непонятного кода. Конечно страниц на сайте будет далеко не 2 , поэтому я и не могу представить себе как мне разбить весь сайт на модули, чтобы каждый из них подключался туда куда надо и когда надо.
Из всего прочитанного я понял только лишь то, что я должен создать шаблон самой страницы (он будет один для всех страниц). В созданной заранее папке models я должен создать файл index.php, где у меня будет производиться запрос к базе и возвращать результат в "Вид" (и то уже не понимаю как именно). Для страницы message.php я должен создать тот же шаблон и в папке models создать файл который будет обрабатывать форму. Кроме того, в папке template я должен создать саму форму для обратной связи. В общем не понимаю я ни черта, как это всё будет выглядеть и как должно работать.
Возможно кто то сможет помочь разобраться с моей проблемой, или хотя бы даст ссылки на хорошие статьи по моему вопросу, ещё раз замечу, БЕЗ применения фреймворков и движков. Возможно я чего то недопонимаю, не спорю. В общем, разъясните пожалуйста. Недели 3 толкусь на одном месте и до сих пор чистый лист... Даже не знаю с чего начать. Заранее премного благодарен за понимание и помощь!
P.S. На PHP учусь около года, сделал пару "топорных сайтов" (без MVC), но всё новое понимаю очень тяжело. Поэтому, если можно конечно, пишите простыми словами
Приветствую всех! Ребята, помогите пожалуйста разобраться с правильным написанием обработчика формы. Делаю админку для сайта. Создаю файл для редактирования и создания новой категории. Т.к. форма для создания и редактирования одинаковая, то можно объединить обе операции в 1 файле. Скрипт будет определять что ему нужно делать (редактировать, или создавать) по пришедшей $id. Если она есть, то надо брать данные из базы и подставлять их в форму. Если же её нет, то значит выводить пустую форму. Далее по нажатии кнопки "Сохранить", должен сработать скрипт, который либо внесёт изменения в строке (в базе) с этим id, либо создаст новый. При этом, если нужно редактировать, то в форму, для полей (в value) должны подставляться значения: либо из массива POST (если форма уже была отправлена, но были какие то ошибки и форма была возвращена), либо если POST ещё нет (т.е кнопка ещё не нажата), то значения из базы. Если же создаётся новая категория, то выводить только POST, соответственно если она есть. В общем как правильно совместить 2 файла с одинаковой формой в 1. Знаю что можно, но не знаю как правильно сформировать код, в какой последовательности что писать. Если можно, напишите просто словами, как бы например Вы сделали, по Вашим словам код уже написать смогу.
Заранее всем спасибо!
P.S. Написать скрипт не проблема, а написать правильный скрипт это наука.
Да, да я уже так и сделал. Благодарю ещё раз (Добавление)
Всё бы хорошо. Да вот только сессии тоже не то. Т.к стоит 1 раз запустить индексную, как потом можно сколько угодно раз заходить прямиком на эту страницу. Это уже не то что мне надо. Пробовал я и HTTP_REFERER, почему то он не присылает адрес страницы с которой пришли, указывает только лишь директорию размещения этой страницы, без её имени.
Понятно. Извиняюсь если был не прав. А можете объяснить почему так? Ведь по идее получается, "если сессия есть, то делай редирект". Я видно даже этого не могу правильно понять
Уже пробовал. Как я и говорил, получается что если сессия есть, то происходит редирект.
Или я не совсем въехал, или Вы не правильно поняли, либо немного ошиблись Редирект будет происходить в том случае, если адресная строка будет index.php, или если будет сессия (судя по Вашим кодам). Мне наоборот надо, чтобы если был вход НЕ через главную, то отправить на неё. Я принцип понял, уже хотел так и сделать. Спасибо!