Передача массивов в рамках MVC - PullRequest
0 голосов
/ 12 марта 2012

Хорошо, это немного сложно, но я постараюсь объяснить это как можно проще.

У меня есть класс Model, который выполняет всю деятельность и сохраняет информацию в массивах.

У меня есть класс Controller, который создает новый класс Model и вызывает требуемое действие из класса Model для выполнения действия.

Но все это должно происходить из файла View. Поэтому я отправляю форму из моего файла View, обновляю страницу, и после обновления мой класс Controller проверяет, была ли отправлена ​​форма или нет, если true, тогда он начинает создавать объект из моего класса Model.

Теперь у меня проблема. Мне снова нужно перенаправить страницу в классе Controller, в основном при обновлении он фактически вызывает действие внутри самого класса Controller в соответствии с данными, отправляемыми классом Model. * 1009 например *

В моем классе Controller есть конструктор, который создает новый объект Model, вызывает действие Model и имеет оператор if и else для проверки данных, отправляемых классом Model.

Теперь, основываясь на значении, которое он вызывает / перенаправляет на два других моих действия в классе Controller. Но, как я перенаправить с помощью

    header("model/controller/");

мои массивы потеряны, и я никак не могу передать свои массивы из Controller в View.

Я пытался

    header("model/controller/".$array);

и прохождение через URL. Но я бы предпочел не передавать его через URL.

Так возможно ли достичь того, чего я пытаюсь достичь?

Кроме того, извините, если это может быть наивный вопрос или очень плохая практика программирования, я только учусь. Критика очень приветствуется.

Ответы [ 2 ]

1 голос
/ 12 марта 2012

То, что вы спрашиваете: Как сохранить данные между двумя HTTP-запросами , и обычно ответом является использование сессий . Это не имеет ничего общего с MVC.

0 голосов
/ 12 марта 2012

Я думаю, что единственный способ передать это - использовать

$data = implode('/',$array);
header("model/controller/".$data);

и при их получении в вашей модели используйте этот код:

$data = explode('/',fun_get_args());
// OR
$data = explode('/',$requestURL);
// $requestURL to be replaced with a function depending on your MVC

Надеюсь, это поможет вам

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...