Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [smarty] DUŻY problem:/
skubekk
post 15.04.2004, 10:12:54
Post #1





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 8.08.2003
Skąd: Częstochowa

Ostrzeżenie: (0%)
-----


Mam taki o to kod:

[php:1:e3f781d905]<?php

$rocznik[] = '1988';
$klasa[1988][] = 'A';
$klasa[1988][] = 'B';
$klasa[1988][] = 'C';

$rocznik[] = '1987';
$klasa[1987][] = 'A';
$klasa[1987][] = 'B';


$rok = date(Y);
if(date(n)<7)
$rok-=1;

for($i=0; $i < count($rocznik); $i++)
{
$wiek = $rok-$rocznik[$i];

switch ($wiek)
{
case "15":
echo "<p class='tekst'><b>Klasy III</b><br>";
break;
case "14":
echo "<p class='tekst'><b>Klasy II</b><br>";
break;
case "13":
echo "<p class='tekst'><b>Klasy I</b><br>";
break;
}

if($wiek==16)
{
echo "<p class='tytul' align='center'>Absolwenci:";
}

if ($wiek>15)
{
$rok_szkolny[0] = $rocznik[$i]+16;
$rok_szkolny[1] = $rok_szkolny[0]-1;
echo "<p class='tekst'><b>";
echo $rok_szkolny[1].'/'.$rok_szkolny[0];
echo "</b><br>";
}

$r_klasa = $klasa[$rocznik[$i]];
if(count($r_klasa)!=0)
{
sort($r_klasa);
}

for($x=0; $x < count($r_klasa); $x++)
{
echo "<a class='lista' href='?akcja=pokaz_klase&rocznik=".$rocznik[$i]."&klasa=".$r_klasa[$x]."'>$r_klasa[$x]</A>";
if ($x!=count($r_klasa)-1)echo " | ";
}

}
?>[/php:1:e3f781d905]

Chciałem zrobić ten skrypt z obsługa szablonów smarty. Ale doszedłem do wniosku ze to niema sensu bo i tak nie oddziele kodu od html. Może sie myle :?: Spróbujcie może wam sie uda rolleyes.gif

EDIT: Taki pownien być wynik tego skryptu:

Kod
Klasy III

A | B | C



Absolwenci:



2002/2003

A | B
Go to the top of the page
+Quote Post
scanner
post 15.04.2004, 11:18:30
Post #2





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




a) przesunięte: skrypty => php
cool.gif nie rozumiesz zasad działania szablonów
c). Poczytaj manual do smarty - polska werrsja tymczasoow na http://rzseattle.piwko.pl/


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post
skubekk
post 15.04.2004, 13:45:24
Post #3





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 8.08.2003
Skąd: Częstochowa

Ostrzeżenie: (0%)
-----


a) Czysta pomyłka:/ Skapnołem sie po czasie:/
cool.gif Rozumiem działanie szablonów.

Kod
Smarty jest systemem szablonowym dla php.  Służy ułatwieniu oddzielenia logiki aplikacji od jej wyglądu . Najlepiej opisuje go  sytuacja kiedy programista aplikacji i projektant szablonów mają do spełnienia różne role (bo przecież w większości przypadków to nie jest ta sama osoba). Na przykład, powiedzmy, że projektujesz stronę web która wyświetla artykuł z gazety. Nagłówek, stopka autor i treść są elementami zawartymi w artykule, przyporządkowany im numer mówi nam w jaki sposób poszczególne elementy będą prezentowane. Elementy zostają przyporządkowane przez aplikacje do Smarty, wtedy projektant szablonów edytuje szablony używając kombinacji znaczników HTML i znaczników szablonu do formatowania prezentacji tych elementów (tabelki HTML, kolory tła, wielkość czcionek, arkusze stylów,  itd.).


c) znam i kożystam w miare możliwości rolleyes.gif

Może spytam sie tak: Jak najprościej wyświetlić ten kod w smarty??
Go to the top of the page
+Quote Post
hwao
post 15.04.2004, 13:57:37
Post #4


Developer


Grupa: Moderatorzy
Postów: 2 844
Pomógł: 20
Dołączył: 25.11.2003
Skąd: Olkusz




No to małe te mozliwosci...
Poczytaj dokladnij i rusz glowa :]
Go to the top of the page
+Quote Post
skubekk
post 15.04.2004, 21:59:55
Post #5





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 8.08.2003
Skąd: Częstochowa

Ostrzeżenie: (0%)
-----


Cytat
No to małe te mozliwosci...
Poczytaj dokladnij i rusz glowa :]


Przestudiowałem całego manuala SMARTY (od deski do deski) i jakoś niemoge tego zrobić:/ Może mam jeszcze za małą główke żeby to pojąć i "ruszyć głową". :oops:

O to marne efekty mojej pracy:
Kod
{section name=x loop=$rocznik}

{assign var='rocznik_now' value=$rocznik[x]}

<b>$rocznik[x]</b><br>

  

   {section name=y loop=$klasa[$rocznik_now]}

     {$klasa[$rocznik_now][y]}

     {if !$smarty.section.y.last} | {/if}

   {/section}

  

<br>

{/section}


Niewiem czy dalsza praca nad tym ma jakiś sens. Może lepiej zostawić to tak jak jest :?: Prosze o pomoc :x

Wyświetlić rocznik i klase to jest pestka. Tylko że niemam zielonego pojęcia jak rocznik zamienić na taką postać: Klasa III.
Myślałem o funkcji insert. Ale wszystko by było ładnie pięknie gdybym niemusiał wyświetlić napisu: Absolwenci
Go to the top of the page
+Quote Post
eS...
post 16.04.2004, 00:18:54
Post #6





Grupa: Zarejestrowani
Postów: 367
Pomógł: 2
Dołączył: 4.03.2003
Skąd: C:/Windows/Temp

Ostrzeżenie: (0%)
-----


8) Jasne że ma, ja np. męczyłem się przez godzine żeby sobie newsy z bazy wyświetlic i udao się biggrin.gif, przy czym nie wymiesząłem html z php. Jest wyraźnie i przejzyście
pracuj dalej


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 26.06.2025 - 12:32