Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Как вернуть в контроллер результат работы модели и вызвать соответствующее результату предсьавление?
Форумы портала PHP.SU » » Объектно-ориентированное программирование » Как вернуть в контроллер результат работы модели и вызвать соответствующее результату предсьавление?

Страниц (1): [1]
 

1. Нина - 15 Июля, 2016 - 15:40:40 - перейти к сообщению
Добрый день.
Помогите, пожалуйста, разобраться.
Например, есть форма регистрации (index.php)
CODE (html):
скопировать код в буфер обмена
  1.  
  2. <form action="controller.php" method="POST">
  3.             <table>
  4.                 <tr>
  5.                     <td>E-mail:</td>
  6.                     <td><input type="text" size="30" name="login" required></td>
  7.                 </tr>
  8.                 <tr>
  9.                     <td>Пароль:</td>
  10.                     <td><input type="password" size="30" maxlength="20" name="password" required></td>
  11.                 </tr>
  12.                 <tr>
  13.                     <td>&nbsp;</td>
  14.                     <td colspan="2"><input class="submit" type="submit" value="Регистрация" name="submit"></td>
  15.                 </tr>
  16.             </table>
  17.         </form>
  18.  

Есть, к примеру, класс User (model.php)
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3. class Users {
  4.  
  5.     public $login;
  6.     public $password;
  7.    
  8.     public function __construct($login, $password) {
  9.         $this->login = $login;
  10.         $this->password = $password;
  11.     }
  12.    
  13.     public function registr() {
  14.         return $this->login . ' ' . $this->password;
  15.     }
  16.  
  17. }
  18.  
  19. $person = new Users($login,$password);
  20.  

Есть файл представления (view.php)

Есть файл controller.php
PHP:
скопировать код в буфер обмена
  1.  
  2. $login = isset($_POST['login']) ? $_POST['login'] : '';
  3. $password = isset($_POST['password']) ? $_POST['password'] : '';
  4. include dirname(__FILE__).'/'.'model.php';
  5.  

Как правильно организовать файл controller.php,
чтобы после того, как пользователь ввел login и password в форму и отправил их
файлу controller.php, а controller.php передал данные модели, модель их обработала,
контроллер вызвал view.php и отобразил результат работы модели?
2. Viper - 15 Июля, 2016 - 17:01:01 - перейти к сообщению
Вызываете метод модели и присваиваете результат переменной. Передаете в view.
3. Нина - 15 Июля, 2016 - 17:52:09 - перейти к сообщению
Viper пишет:
Вызываете метод модели и присваиваете результат переменной. Передаете в view.


Спасибо, получилось.
4. Санчич - 15 Июля, 2016 - 21:05:11 - перейти к сообщению
Нина пишет:
Передаете в view.


Только public $login; public $password; сделайте приватными private $login; private $password;

 

Powered by ExBB FM 1.0 RC1