[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: доходит часть в tpl файл
sergey1998181
уже писал раз на другом форуме ,но чтото проблема так и не решилась .
в котроллере я отправляю свойства в моуль регистр где предопределенны переменные ,которые далее принимают значения и отправляются в многомерный массив input далее в tpl файле как видно на скринах я циклом на основе type который получается из методов .на скрине видно что так как доходит только свойство type только submit и высвечивается только submit . проблемма в том что доходит только часть многомерного массива )скрины прикладываю ,жду помощи )выкладываю листинг ,если что понадобиться ,говорите ,пришлю



<?php
var_dump($input);
if(isset($hornav)){ ?>
<div id="reg">
<?php } ?>

<h1 align="center"><?=$register_users?></h1>

<
form
<?php if(isset($name)){ ?> id="name" <?php } ?> action="<?=$action?>" <?php if ($check) { ?> method="<?=$method?>
"
<?php } ?> onsubmit="checkForm(this)" />

<?php if($message){ ?><p class="message"><?=message?></p><?php } ?>




<?php
if($input)foreach ($input as $inputs) { ?>
<?php
include "f_". $input->type .".tpl"; ?>
<?php
} ?>

</form>

<?php if (isset($hornav)){ ?> </div> <?php } ?>

<?php

class
Register extends Module {

public function __construct() {
parent::__construct();
$this->add("register_users");
$this->add("action");
$this->add("login");
$this->add("password");
$this->add("email");
$this->add("captha");
$this->add("input");
$this->add("enctype");
$this->add("check", true);
$this->add("message");
$this->add("method", "post");
$this->add("jsv");
}
public function addJSV($field, $jsv) {
$this->addObj("jsv", $field, $jsv);
}

public function text($name, $label = "", $value = "", $default_v = "") {
$this->input($name, "text" , $label, $value, $default_v);


}



public function password($name, $default_v = "",$label = "" ) {
$this->input($name, "password", $label, "", $default_v);
}

public function captcha($name, $label) {
$this->input($name, "captcha", $label);

}

public function file($name, $label) {
$this->input($name, "file", $label);
}

public function hidden($name, $value) {
$this->input($name, "hidden", "", $value);
}

public function submit($value, $name = false) {
$this->input($name, "submit", "", $value);
}

private function input($name , $type, $label, $value = false, $default_v = false) {
$cl = new stdClass();
$cl->name = $name;
$cl->type = $type;
$cl->label = $label;
$cl->value = $value;
$cl->default_v = $default_v;
$this->input = $cl;

}

public function getTmplFile() {
return "register";
}

}


?>

$register->text( "name", "Имя и/или фамилия:", $this->request->name);
$register->text("login", "Логин:", $this->request->login );
$register->text("email", "E-mail:", $this->request->email );
$register->password("password" , "Ваш пароль " , "Введите пароль" );
$register->captcha("captcha","Введите код с картинки ");
$register->submit("Регистрация");


Первый листинг это тпл ,второй это модуль ,в которого вкидываются свойства из 3 листинга - тоесть ккотроллера



подключение файлов идет из сввойства в мнгомерном массиве type в файле register.tpl которй cоздается в inputs там где stdclass .Данные как на 3 листинге я отправляю на метод text со свойствами )если сделать разпечатку из модуля то получаю следующий полный массив


object(stdClass)#17 (5) { ["name"]=> string(4) "name" ["type"]=> string(4) "text" ["label"]=> string(32) "Имя и/или фамилия:" ["value"]=> NULL ["default_v"]=> string(0) "" } object(stdClass)#18 (5) { ["name"]=> string(5) "login" ["type"]=> string(4) "text" ["label"]=> string(11) "Логин:" ["value"]=> NULL ["default_v"]=> string(0) "" } object(stdClass)#17 (5) { ["name"]=> string(5) "email" ["type"]=> string(4) "text" ["label"]=> string(7) "E-mail:" ["value"]=> NULL ["default_v"]=> string(0) "" } object(stdClass)#18 (5) { ["name"]=> string(8) "password" ["type"]=> string(8) "password" ["label"]=> string(27) "Введите пароль" ["value"]=> string(0) "" ["default_v"]=> string(20) "Ваш пароль " } object(stdClass)#17 (5) { ["name"]=> string(7) "captcha" ["type"]=> string(7) "captcha" ["label"]=> string(42) "Введите код с картинки " ["value"]=> bool(false) ["default_v"]=> bool(false) } object(stdClass)#18 (5) { ["name"]=> bool(false) ["type"]=> string(6) "submit" ["label"]=> string(0) "" ["value"]=> string(22) "Регистрация" ["default_v"]=> bool(false) }
object(stdClass)#18 (5) { ["name"]=> bool(false) ["type"]=> string(6) "submit" ["label"]=> string(0) "" ["value"]=> string(22) "Регистрация" ["default_v"]=> bool(false) }



если делаю респечатку из модуля обьекта получаю только малую часть
object(stdClass)#18 (5) { ["name"]=> bool(false) ["type"]=> string(6) "submit" ["label"]=> string(0) "" ["value"]=> string(22) "Регистрация" ["default_v"]=> bool(false) }
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.