Php - includowanie kilku elementów z wybranej strony


(system) #1

Witajcie.

Przepraszam za taki niejasny temat, ale nie wiem jak to sformułować. Mam dwie strony: główną i podstronę.

Na podstronie mam listę:

  • raz
  • dwa
  • trzy
  • cztery
    [/code]

I tak dalej.

Na stronie głównej chciałbym includować jedynie pierwsze dwa elementy z tej listy (która jest na podstronie).

Nie wiem jak to zrobić, a jako, że lista na podstronie będzie się zmieniała, chciałbym uniknąć ręcznej modyfikacji strony głównej.

Byłbym wdzięczny za pokazanie mi sposobu jak to zrobic.

Dzięki!


(mario@) #2

Skoro "oba pliki są Twoje" to zainkluduj podstronę do strony głównej a podaną listę podziel jakimiś warunkami w php (w zależności od strony wyświetlaj konkretne elementy listy).


(system) #3

Powalczyłem i coś takiego utworzyłem:

flush();

ob_start();

include('portfolio.php');

$contents = ob_get_clean();

preg_match('#
  • (.*?)

s', $contents, $match); preg_match_all("#(.*?)#s", $match[1], $liczby); echo "\t\t\t\t\t" . $liczby[0][0] . "\n\t\t\t\t\t"; echo $liczby[0][1] . "\n\t\t\t\t\t"; echo $liczby[0][2]; [/code]


(Sitemaster) #4

Tylko po co bawić się w parsowanie?

Nie lepiej jest elementy listy w trzymać w tablicy?


(system) #5

Hmm teoretycznie tak, ale miałem problem z zachowaniem dobrych indentów w źródle strony (chcę żeby kod był bardzo ładny).


(Sitemaster) #6

że co??

-a co ma piernik do wiatraka?


(system) #7

Problemem są zbyt małe umiejętności. Ale powalczę jeszcze by to wrzucić w tablice.


(Sitemaster) #8

a co tu walczyć?

$tablica=array('raz','dwa','trzy','cztery');

załadowanie całości w listę:

echo '
  • '; foreach ($tablica as $key) echo '
  • '.$key.''; echo '
    ';[/code] Po zaincludowaniu pliku dalej masz wszystko w zmiennej $tablica, wystarczy sobie wybrać element(y) jakie tylko chcesz. np pojedynczo:
    [code]$tablica[2]; //=trzy

albo z użyciem pętli.