Skocz do zawartości
  • 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


  • Kto przegląda   0 użytkowników

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

×

Ważne informacje

Kontynuując przeglądanie strony, wyrażasz zgodę na używanie przez nas plików cookies.