2015-04-15 2 views
0

Я получаю вещь MVC. :) Клянусь, я знаю.Codeigniter Model to Controller Flow

Итак, у меня есть главный контроллер, который служит вверх либо Начальном «вид» или Вход/Регистрация «вид», основанный на, если пользователь вошел в систему.

отлично работает и денди.

При регистрации отправляется ссылка на адрес электронной почты, которую пользователь должен щелкнуть, чтобы подтвердить учетную запись-> электронная почта. Это функция, которая является функцией в домашнем контроллере, который запускает модель, является ссылкой.

Теперь эта модель представляет собой код для обновления базы данных с помощью A: Активированный/Не, B: Попробуйте подсчитать.

Теперь, когда это будет сделано, я хочу, чтобы отобразить Вход/Регистрация «вид» с соответствующим сообщением (не удалось, не удалось, пытался слишком много раз, и т.д ...)

Я собирался используйте переадресацию и введите тип сообщения, текст сообщения в переменной сеанса и просто покажите его таким образом, но затем подумали, что я могу обойти это, отключив функцию индекса главного контроллера, передавая переменную массива, содержащую тип сообщения , и текст сообщения.

Мальчик был я неправ.

Итак, как я могу это сделать? Я бы очень хотел, чтобы держаться подальше от опираясь на сеансы

+0

Вы хотите перенаправить метод home/index в качестве перенаправления? вы можете попробовать использовать POST или просто отправить ключ сообщения и построить функцию с текстами сообщений – Lupin

+1

Я бы предложил поместить все методы, связанные с подключением, в отдельный контроллер. то все о подтверждении логина, электронной почты и т. д. - все это происходит от конкретного контроллера входа. – cartalot

+0

Все материалы, связанные с подключением, находятся в его собственной модели. Однако вместо перенаправления с главной страницы на страницу входа/регистрации, если пользователь не вошел в систему, я просто загружаю в окно «Вход/Регистрация» на домашнем контроллере. – Kevin

ответ

1

Соответствующий метод модели должен возвращать значение (возможно, массив), который содержит статус и сосчитать (псевдокод)

$statusCount = $model->getStatusCount($input); 

А потом пройти данные для просмотра

$view->set('statusCount', $statusCount); 

Так, отвечая на вопрос: да, вы можете уйти от $_SESSION.

+0

Да, я считаю, что сессии в лучшем случае являются отрывочными. # 1 самостоятельно, № 1 CI встроенный :) – Kevin

+1

Бинго. Вот что я сделал. Я установил пару «частных» переменных как для msgType, так и для сообщения, сработал, что мне нужно, захватить возврат и проверить его, если он действителен. Если он действителен, задайте свойства и переустановите '$ this-> index()' – Kevin