logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Strona w PHP. Linki z lewej strony. Strony otwierane po prawej.

Mbeat 20 Kwi 2006 11:50 2113 7
REKLAMA
  • #1 2546827
    Mbeat
    Poziom 21  
    Posty: 643
    Pomógł: 38
    Ocena: 52
    Witam
    Kumpel prosił mnie abym zrobił mu stronę również z użyciem php ale ma wyglądać tak jak w załączniku. Pytanie moje jest takie jak zrobić aby linki z lewej strony w menu po kliknięciu ładowane były do prawej części strony, ale w taki sposób aby lewa strona i banner były widoczne cały czas ?? Jeżeli mógłby ktoś wykonać sam szkielet strony z przykładowym odnośnikiem w oparciu o TABELE i wykorzystaniem poniższego skryptu PHP był bym bardzo wdzięczny.


    <a href="index.php?showh=strona/abcdef" class="pmenu">: ABCDEF</a>


    	    <?php
    		if (isset($_GET[showp])) {
    		include($_GET[showp].".php");
    		} else {
    		if (isset($_GET[showh])) {
     		include($_GET[showh].".htm");
     		} else {
     		include("glowna.htm"); 
    		}
    		}
    		?>


    Z góry dzięki za pomoc. Nagroda - 20 pkt
    Załączniki:
    • Strona w PHP. Linki z lewej strony. Strony otwierane po prawej. Strona.jpg (24.75 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • REKLAMA
  • #2 2547330
    one_eddie
    Poziom 25  
    Posty: 973
    Pomógł: 62
    Ocena: 14
    Robi sie to wykorzystujac ramki.
    jest wiele materialow w sieci, lepszych niz jakakolwiek wypowiedz na tym forum.

    Wiec uwazam ze warto poszukac.

    Drobna uwaga: Po stworzeniu odpowiedniegu ukladu ramek, w linkach uzywaz sie nazw ramek zeby sprezycowac w ktorej ja sie pojawic konkretna zawartosc.

    Zreszta jak znajdziesz material, np szukajc na google zobaczysz ze jest to naprawde proste.
  • REKLAMA
  • Pomocny post
    #3 2548557
    ostry_18
    Poziom 24  
    Posty: 824
    Pomógł: 64
    Ocena: 35
    Mbeat napisał:
    ale w taki sposób aby lewa strona i banner były widoczne cały czas ??


    czyli maja byc ramki? bo w php sie nie da bez przeładowania. a za to ramki nei sa juz chyba zgodne z w3c (tak piszesz tutaj chyba ze dasz doctype do html 4.01
    [/url]
  • REKLAMA
  • #4 2548856
    Mbeat
    Poziom 21  
    Posty: 643
    Pomógł: 38
    Ocena: 52
    Najlepiej by było przy użyciu tabel.
    Pozdrawiam.
  • Pomocny post
    #5 2548960
    kordan11
    Poziom 18  
    Posty: 241
    Pomógł: 24
    Ocena: 10
    Według mnie takie rzeczy najlepiej robić przez SMARTy z dołaczaniem pliku.
    Możesz też zrobić bez smartów. Wyglada to mniejwiecej tak:
    Robisz plik z górnym banerem i menu, a następnie plik z banerem dolnym.
    Potem na każdej stronie wstawiasz
    
    require("head.php"); //baner górny i menu
    //tresc strony
    require("foot.php"); //baner dolny
    

    Plik z banerem górnym i menu head.php
    
    <html>
    <head>
    //meta
    </head>
    <body>
    <table>
    <tr><td colspan=2><img src=baner.jpg></td></tr>
    <tr><td>menu</td><td>
    

    Baner dolny foot.php
    
    </td></tr>
    <tr><td colspan=20><img src=baner2.jpg></td></tr>
    </table>
    </body>
    </html>
    
  • #6 2550255
    Mbeat
    Poziom 21  
    Posty: 643
    Pomógł: 38
    Ocena: 52
    Wolał bym to inaczej zrobić. Tak jak pisałem, aby było zgodne ze standardami, żeby kumpel nie pisał że internauci się wkużają, że coś źle się wyświetla. Grafikę już mam piociętą na 4części, po złożeniu ma idealnie pasować do siebie.
    Pozdrawiam.
  • REKLAMA
  • Pomocny post
    #7 2550837
    SaraniS
    Poziom 26  
    Posty: 745
    Pomógł: 78
    Ocena: 26
    Witam
    Faktycznie sa 2 sposoby - ramki albo szablony. Osobiscie proponuje ten drugi, wprawdzie wiekszy ruch generuje (pelne przeladowanie strony) ale jest jak najbardziej zgodny z W3C :)
    Osobiscie do prostych projektow nie stosuje smarty, tylko takie proste szabloniki - 3 funkcje (head, page_top, page_bottom) ktore wlasnie wyswietlaja naglowek HTML, gore stronki i dol stronki (naglowek osobno przydaje sie, gdy chce np wyswietlic tylko fotke, lub stronke o odmiennym wygladzie) pomiedzy nimi wstawiam tresc strony i jest :)
    Co do pociecia grafiki i dopasowania - nie ma znaczenia czy zrobisz na ramkach czy na szablonie - i tak nie unikniesz zabawy z dopasowywaniem :D Choc IMHO na szablonie moze byc jednak prosciej.
    W ogole to zamiast tabel zastosowalbym uklad na div-ach - znow z uwagi na zgodnosc z W3C :D
    A taka stronka jak narysowales, w szablonie wygladalaby tak: \
    
    <?php
    function page_top($tytul = 'tu domyslny tytul')
    {
    ?>
    <body>
    <div id="main">
        <div id="baner">
            <img src="obrazek bannera.jpg" alt=""><br/>
            <?php echo $tytul; ?> <!-- mozesz wyswietlic tytul ;) -->
        </div>
        <div id="menu">
    <!-- tutaj menu z linkami - mozesz przekazac w parametrze funkcji jako tablice, jesli ma ono sie zmieniac na stronach. Ja korzystam z SQL i menu pobieram z bazy zaleznie od zestawu identyfikatorow danej podstrony (dzial, id artykulu, itp.) -->
        </div>
        <div id="content">
    <?php
    }
    
    function page_bottom()
    {
        </div>
        <div id="footer">
    <!-- tutaj zawartosc stopki strony -->
        </div>
    </div>
    ?>
    <?php
    }
    ?>
    

    do tego css z definicjami polozenia poszczegolnych boxow - mozesz je ustalic albo absolutnie, albo relatywnie; osobiscie absolutnego pozycjonowania nie lubie, i jesli mam mozliwosc to go unikam, jednak tu i tak masz pocieta grafike, wiec wymiarow musisz sie trzymac :D
    Inna sprawa, to zabawa z ustawieniem, zeby to wygladalo tak samo w IE oraz w normalnych przegladarkach :D Najprosciej to osiagnac przez zastosowanie dwoch alternatywnych arkuszy stylu.
    Plik php z trescia podstrony bedzie mial postac:
    
    <?php
    include('link do pliku z powyzszymi funkcjami');
    page_top('tu mozesz podac tytul');
    ?>
    Tutaj tresc strony - moze byc statyczna lub generowana z PHP
    <?php
    page_bottom();
    ?>
    

    I jeszcze ten CSS - jednak ci go jakos napisze ;) Ale nie gwarantuje poprawnosci - pisze na szybko i z glowy ;)
    
    /* pominalem definicje wszystkich styli poza boxami */
    div#main {position: relative; margin: 0 auto;}
    div#baner {position: absolute; top: 0; left: 0; width: 750px; height: 114px;}
    div#menu {position: absolute; top: 114px; left: 0; width: 159px; height: 445px;}
    div#content {position: absolute; top: 114px; left: 159px; width:591px; height:445px;}
    div#footer {position: absolute; top: 559px; left: 0; width: 750px; height: /* ustal sam wg potrzeb ;) */;}
    

    Z innymi atrybutami selektorow poeksperymentuj sam ;) I tak beda one zalezne od tego, dla jakiej przegladarki bedzie ten styl ;)
  • #8 2552592
    Mbeat
    Poziom 21  
    Posty: 643
    Pomógł: 38
    Ocena: 52
    Problem rozwiązany innym sposobem. Temat zamykam. Pozdrawiam.

Podsumowanie tematu

LABEL_AI_GENERATED
Dyskusja dotyczyła stworzenia strony w PHP z menu po lewej stronie, gdzie po kliknięciu linku zawartość ładowana jest po prawej stronie, przy jednoczesnym zachowaniu widoczności lewego menu i banera. Zaproponowano użycie ramek HTML jako najprostsze rozwiązanie umożliwiające ładowanie treści w określonych obszarach strony bez przeładowania całej strony, jednak zwrócono uwagę na niezgodność ramek z aktualnymi standardami W3C. Alternatywnie zasugerowano wykorzystanie szablonów PHP (np. z funkcjami dołączającymi nagłówek, menu i stopkę) oraz układu opartego na tabelach lub divach, co jest bardziej zgodne ze standardami i pozwala na lepsze dopasowanie grafiki. Wskazano również na możliwość użycia systemu Smarty do zarządzania szablonami. Ostatecznie autor tematu rozwiązał problem innym sposobem i zamknął dyskusję.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA