Skocz do zawartości
  • Zarejestruj się
  • 0
X3nO

Wyświetlanie zmiennych z sekcji w szablonie

Pytanie

Witam, mam pytanie, jak wyświetlić zmienne z sekcji w szablonie?

Moja sekcja:

<?php

class public_sygngen_globalek_sekcja extends ipsCommand
{
    public function doExecute( ipsRegistry $registry )
    {
        $this->lang->loadLanguageFile( array( 'public_lang' ), 'sygngen' );


    $serwery = array (
		"79.133.192.34:27016" => "Cs-Spark.eu [FFA Dynamic]",
		"80.82.16.70:27037" => "Cs-Spark.eu [OnlyDD2]",
		"91.204.161.25:27035" => "Cs-Spark.eu [CodMod]",
		"91.210.128.50:27023" => "Cs-Spark.eu [DiabloMod]",
		"91.204.161.25:27045" => "Cs-Spark.eu [PokeMod]5",
		"91.193.54.84:25682" => "Cs-Spark.eu [Survival+FreeBuild]"
	);

	$obrazki = array (
		"bg1" => "Counter-Strike RedBlue",
		"bg2" => "Counter-Strike: Source",
		"bg3" => "Call Of Duty",
		"bg4" => "Call Of Duty: Black Obs",
		"bg5" => "Call Of Duty War",
		"bg6" => "Monster",
		"bg7" => "Soldiers",
		"bg8" => "Samochod",
		"bg9" => "Kobieta",
		"bg10" => "Kobieta 2"
	);

	foreach ($serwery as $ip=>$nazwa) {
		$foricz1 = "<option value='$ip'>$nazwa</option>";
	}

	foreach ($obrazki as $plik=>$nazwa) {
		$foricz2 = "<option value='$plik'>$nazwa</option>";
	}

        $this->registry->output->setTitle( $this->lang->words['sygngen_title'] );
        $this->registry->output->addNavigation( $this->lang->words['sygngen_title'], NULL );
        $this->registry->output->addContent( $this->registry->output->getTemplate('sygngen')->sygnGen() );
        $this->registry->output->sendOutput();
    }
}

Oraz szablon:

<div id="register_form">
	<div class="ipsSteps clearfix">
	<ul>
		<li class="ipsSteps_active">
			<strong class="ipsSteps_title">{$this->lang->words['sygngen_s1']}</strong>
			<span class="ipsSteps_desc">{$this->lang->words['sygngen_info']}</span>
			<span class="ipsSteps_arrow">&nbsp;</span>
		</li>
		<li>
			<strong class="ipsSteps_title">{$this->lang->words['sygngen_s2']}</strong>
			<span class="ipsSteps_desc">{$this->lang->words['sygngen_gen']}</span>
			<span class="ipsSteps_arrow">&nbsp;</span>
		</li>
	</ul>
</div>
<br>
	<h1 class="maintitle">{$this->lang->words['sygngen_title']}</h1>
		<div class="ipsBox">
			<div class="ipsBox_container ipsPad">
					<ul class="ipsForm ipsForm_horizontal">
						<li class="ipsField">
						</li>
						<li class="ipsField clear">
							<label  class="ipsField_title">{$this->lang->words['sygngen_name']}</label>
							<p class="ipsField_content">
								<input required="required" class="input_text" size="45" value="" tabindex="1" type="text">
							</p>
						</li>
						<li class="ipsField clear">
							<label class="ipsField_title">{$this->lang->words['sygngen_rank']}</label>
							<p class="ipsField_content">
								<input required="required" class="input_text" size="45" value="" tabindex="2" type="text">
							</p>
						</li>
						<li class="ipsField clear">
							<label class="ipsField_title">{$this->lang->words['sygngen_age']}</label>
							<p class="ipsField_content">
								<input required="required" class="input_text" size="45" value="" tabindex="2" type="text">
							</p>
						</li>
						<li class="ipsField clear">
							<label class="ipsField_title">{$this->lang->words['sygngen_steam']}</label>
							<p class="ipsField_content">
								<input required="required" class="input_text" size="45" value="" tabindex="2" type="text">
							</p>
						</li>
						<li class="ipsField clear">
							<label class="ipsField_title">{$this->lang->words['sygngen_gg']}</label>
							<p class="ipsField_content">
								<input required="required" class="input_text" size="45" value="" tabindex="2" type="text">
							</p>
						</li>
						<li class="ipsField clear">
							<label class="ipsField_title">{$this->lang->words['sygngen_email']}</label>
							<p class="ipsField_content">
								<input required="required" class="input_text" size="45" value="" tabindex="2" type="text">
							</p>
						</li>
						<li class="ipsField clear">
							<label class="ipsField_title">{$this->lang->words['sygngen_svr']}</label>
							<p class="ipsField_content">
								<select name="gen7">
									{$foricz1}
								</select>
							</p>
						</li>
						<li class="ipsField clear">
							<label class="ipsField_title">{$this->lang->words['sygngen_bg']}</label>
							<p class="ipsField_content">
								<select name="gen8">
									{$foricz2}
								</select>
							</p>
						</li>
					</ul>
				
				<hr>
				<br>
					<input class="ipsButton" value="{$this->lang->words['sygngen_sub']}" tabindex="51" type="submit">
			</div>
		</div>
</div>

Chodzi mi o zmienne $foricz1 i $foricz2

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

9 odpowiedzi na to pytanie

Polecane posty

  • 0
$this->registry->output->addContent( $this->registry->output->getTemplate('sygngen')->sygnGen() );

tutaj musisz przekazać zmienne jakie chcesz użyć w szablonie np.

$this->registry->output->addContent( $this->registry->output->getTemplate('sygngen')->sygnGen( $foricz1, $foricz2 ) );

następnie dla bitu szablonu definiujesz zmienne i ich używasz. Ale w twoim przypadku to nie będzie działać bo do tych zmiennych przypisujesz wartości, które są nadpisywane więc wyświetli się ostatni <option...

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
  • 0

Jak wpisuję so zmiennych w szablonie mam blank screen i zmienia treść...

    $serwery = array (
		'79.133.192.34:27016' =&#62; 'Cs-Spark.eu [FFA Dynamic]',
		'80.82.16.70:27037' =&#62; 'Cs-Spark.eu [OnlyDD2]',
		'91.204.161.25:27035' =&#62; 'Cs-Spark.eu [CodMod]',
		'91.210.128.50:27023' =&#62; 'Cs-Spark.eu [DiabloMod]',
		'91.204.161.25:27045' =&#62; 'Cs-Spark.eu [PokeMod]5',
		'91.193.54.84:25682' =&#62; 'Cs-Spark.eu [Survival+FreeBuild]'
	);

	$obrazki = array (
		'bg1' =&#62; 'Counter-Strike RedBlue',
		'bg2' =&#62; 'Counter-Strike: Source',
		'bg3' =&#62; 'Call Of Duty',
		'bg4' =&#62; 'Call Of Duty: Black Obs',
		'bg5' =&#62; 'Call Of Duty War',
		'bg6' =&#62; 'Monster',
		'bg7' =&#62; 'Soldiers',
		'bg8' =&#62; 'Samochod',
		'bg9' =&#62; 'Kobieta',
		'bg10' =&#62; 'Kobieta 2'
	);

	foreach ($serwery as $ip=&#62;$nazwa) {
		$foricz1 = '&#60;option value='$ip'&#62;$nazwa&#60;/option&#62;';
	}

	foreach ($obrazki as $plik=&#62;$nazwa) {
		$foricz2 = '&#60;option value='$plik'&#62;$nazwa&#60;/option&#62;';
	}

 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
  • 0

Pokaż jaki masz kod w pliku php i w szablonie

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
  • 0
Cytat

Parse error: syntax error, unexpected ';', expecting ')' in /home/xnopl/domains/x3no.pl/public_html/ipb/cache/skin_cache/cacheid_1/skin_sygngen.php on line 33

Szablon:

<div id="register_form">
	<div class="ipsSteps clearfix">
	<ul>
		<li class="ipsSteps_active">
			<strong class="ipsSteps_title">{$this->lang->words['sygngen_s1']}</strong>
			<span class="ipsSteps_desc">{$this->lang->words['sygngen_info']}</span>
			<span class="ipsSteps_arrow">&nbsp;</span>
		</li>
		<li>
			<strong class="ipsSteps_title">{$this->lang->words['sygngen_s2']}</strong>
			<span class="ipsSteps_desc">{$this->lang->words['sygngen_gen']}</span>
			<span class="ipsSteps_arrow">&nbsp;</span>
		</li>
	</ul>
</div>
<br>
	<h1 class="maintitle">{$this->lang->words['sygngen_title']}</h1>
		<div class="ipsBox">
			<div class="ipsBox_container ipsPad">
					<ul class="ipsForm ipsForm_horizontal">
						<li class="ipsField">
						</li>
						<li class="ipsField clear">
							<label  class="ipsField_title">{$this->lang->words['sygngen_name']}</label>
							<p class="ipsField_content">
								<input required="required" class="input_text" size="45" value="" tabindex="1" type="text">
							</p>
						</li>
						<li class="ipsField clear">
							<label class="ipsField_title">{$this->lang->words['sygngen_rank']}</label>
							<p class="ipsField_content">
								<input required="required" class="input_text" size="45" value="" tabindex="2" type="text">
							</p>
						</li>
						<li class="ipsField clear">
							<label class="ipsField_title">{$this->lang->words['sygngen_age']}</label>
							<p class="ipsField_content">
								<input required="required" class="input_text" size="45" value="" tabindex="2" type="text">
							</p>
						</li>
						<li class="ipsField clear">
							<label class="ipsField_title">{$this->lang->words['sygngen_steam']}</label>
							<p class="ipsField_content">
								<input required="required" class="input_text" size="45" value="" tabindex="2" type="text">
							</p>
						</li>
						<li class="ipsField clear">
							<label class="ipsField_title">{$this->lang->words['sygngen_gg']}</label>
							<p class="ipsField_content">
								<input required="required" class="input_text" size="45" value="" tabindex="2" type="text">
							</p>
						</li>
						<li class="ipsField clear">
							<label class="ipsField_title">{$this->lang->words['sygngen_email']}</label>
							<p class="ipsField_content">
								<input required="required" class="input_text" size="45" value="" tabindex="2" type="text">
							</p>
						</li>
						<li class="ipsField clear">
							<label class="ipsField_title">{$this->lang->words['sygngen_svr']}</label>
							<p class="ipsField_content">
								<select name="gen7">
									<foreach loop="$serwery as $ip=>$nazwa">
										<option value='{$ip}'>{$nazwa}</option>
									</foreach>
								</select>
							</p>
						</li>
						<li class="ipsField clear">
							<label class="ipsField_title">{$this->lang->words['sygngen_bg']}</label>
							<p class="ipsField_content">
								<select name="gen8">
									<foreach loop="$obrazki as $plik=>$nazwa">
										<option value='{$plik}'>{$nazwa}</option>
									</foreach>
								</select>
							</p>
						</li>
					</ul>
				
				<hr>
				<br>
					<input class="ipsButton" value="{$this->lang->words['sygngen_sub']}" tabindex="51" type="submit">
			</div>
		</div>
</div>

Zmienne:

    $serwery = array (
		'79.133.192.34:27016' => 'Cs-Spark.eu234545',
		'80.82.16.70:27037' => 'Cs-Spark.eu453425345',
		'91.204.161.25:27035' => 'Cs-Spark.eu23545',
		'91.210.128.50:27023' => 'Cs-Spark.eu2454342',
		'91.204.161.25:27045' => 'Cs-Spark.eu325435',
		'91.193.54.84:25682' => 'Cs-Spark.eu4323'
	);

	$obrazki = array (
		'bg1' => 'Counter-Strike RedBlue',
		'bg2' => 'Counter-Strike: Source',
		'bg3' => 'Call Of Duty',
		'bg4' => 'Call Of Duty: Black Obs',
		'bg5' => 'Call Of Duty War',
		'bg6' => 'Monster',
		'bg7' => 'Soldiers',
		'bg8' => 'Samochod',
		'bg9' => 'Kobieta',
		'bg10' => 'Kobieta 2'
	);

Sekcja:

<?php

ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

class public_sygngen_globalek_sekcja extends ipsCommand
{
    public function doExecute( ipsRegistry $registry )
    {
        $this->lang->loadLanguageFile( array( 'public_lang' ), 'sygngen' );

        $this->registry->output->setTitle( $this->lang->words['sygngen_title'] );
        $this->registry->output->addNavigation( $this->lang->words['sygngen_title'], NULL );
        $this->registry->output->addContent( $this->registry->output->getTemplate('sygngen')->sygnGen( $serwery, $obrazki ) );
        $this->registry->output->sendOutput();
    }
}

 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
  • 0

Tutaj wygląda ok, a otwórz ten plik o który się czepia i zobacz co jest w tej linii +/- 5 linii góra/dół

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
  • 0
/* -- sygnGen --*/
function sygnGen(    $serwery = array (
		'79.133.192.34:27016' => 'Cs-Spark.eu234545',
		'80.82.16.70:27037' => 'Cs-Spark.eu453425345',
		'91.204.161.25:27035' => 'Cs-Spark.eu23545',
		'91.210.128.50:27023' => 'Cs-Spark.eu2454342',
		'91.204.161.25:27045' => 'Cs-Spark.eu325435',
		'91.193.54.84:25682' => 'Cs-Spark.eu4323'
	);

	$obrazki = array (
		'bg1' => 'Counter-Strike RedBlue',
		'bg2' => 'Counter-Strike: Source',
		'bg3' => 'Call Of Duty',
		'bg4' => 'Call Of Duty: Black Obs',
		'bg5' => 'Call Of Duty War',
		'bg6' => 'Monster',
		'bg7' => 'Soldiers',
		'bg8' => 'Samochod',
		'bg9' => 'Kobieta',
		'bg10' => 'Kobieta 2'
	);); {

Czepia się o pierwszy );

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
  • 0

uno, ale jak możesz przekazywać jako parametr w ten sposób tablice. Zajrzyj do jakiegoś kursu php , manuala, książki i zobacz jak przekazywać parametry do funkcji. Nie mając podstaw odradzałbym też pisanie dodatków do ipb, bo tylko zaszkodzisz sobie/komuś nimi

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
  • 0
1 godzinę temu, Spanner napisał:

uno, ale jak możesz przekazywać jako parametr w ten sposób tablice. Zajrzyj do jakiegoś kursu php , manuala, książki i zobacz jak przekazywać parametry do funkcji. Nie mając podstaw odradzałbym też pisanie dodatków do ipb, bo tylko zaszkodzisz sobie/komuś nimi

I raczej tak zrobię, dziękuję za radę :) A tylko z tym problemem mógłbym prosić o tak zwanego "gotowca"?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
  • 0

parametrami w szablonie powinno być:

function sygnGen( $serwery = array(), $obrazki = array() ) {

 

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się

  • Kto przegląda   0 użytkowników

    Brak zalogowanych użytkowników przeglądających tę stronę.

×

Ważne informacje

W celu świadczenie usług przez nasz Serwis na najwyższym poziomie, w ramach Serwisu wykorzystujemy pliki Cookies (tzw. ciasteczka). Korzystając ze stron Serwisu IPSBEYOND.PL bez zmiany ustawień przeglądarki będą one zapisane w pamięci urządzenia. Jeżeli nie dokonacie Państwo zmiany ustawień przeglądarki internetowej to wyrażacie zgodę na zapisywanie plików Cookies.