Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [CSS][PHP] Podstrony z CSS
Forum PHP.pl > Forum > Przedszkole
Sevox
Witam, w końcu musiałem dojść do tych nieszczęsnych podstron... Moje pytanie brzmi jak zrobić podstronę z jakimś artykułem, w którym można zastosować style.css questionmark.gif Czytałem, że można to zrobić include w php ale jak to zastosować na mojej stronie nie mam pojęcia... Może pokażę wam na screenach jak chce aby moja podstrona wyglądała.

Index.php (strona główna): http://img403.imageshack.us/img403/1029/przedo.png

I potencjalna podstrona (artykuł) : http://img593.imageshack.us/img593/5899/86485533.png

Dałoby się tak zrobić? Czy może konieczne jest przepisywanie całego indeksu dla każdej podstrony ? ; /

Bardzo proszę o pomoc.

Nie wiedziałem czy stworzyć ten temat tutaj czy w przedszkolu, więc zrobiłem to tu i tu, a jak admin uzna, że powinno to być tylko w jednym miejscu to proszę o usunięcie drugiego. Przepraszam za kłopot.
Kshyhoo
Jak rozumiem, chcesz zastosować odrębne formatowanie do artykułów?
croc
Odpowiedź na to pytanie zależy od wielu czynników. Zależy przede wszystkim od tego, czy przekazujesz szablon do podstron czy podstrony do szablonu. Ogólnie, jeśli nie używasz klas, to możesz zrobić zmienną globalną zawierającą tablicę ze ścieżkami do plików .css. Dla każdej podstrony - o ile mają jakieś niestandardowo sformatowane elementy - dodajesz określony plik/pliki .css i w samym szablonie sczytujesz jakie pliki zostały dodane i dodajesz linki do <head>.
Sevox
Omg haha.gif A pisałem już, że jestem początkujący? Z tego co napisaliście zrozumiałem jakieś 5 %... Chciałbym po prostu zrobić podstrony z artykułami w jak najprostszy i najszybszy sposób, bo trochę tych podstron jest. Napisałem wyżej, że nie chciałbym przepisywać indeksu, ale tylko dlatego, że myślałem że to spowolni pracę strony.
croc
No dobrze, to jeszcze raz.

Widzę, że chodzi o samo podpinanie stron. No to najprościej będzie Ci to zrobić w taki sposób:

Zrób sobie dwa pliki php, np. top.php i bottom.php.
W top.php zapisz wszystko, co zawsze pojawia się przed treścią pliku/artykułu, tzn. od samego początku aż do tego momentu, gdzie zmienia się treść.
W bottom.php umieść wszystko to, co jest zawsze po treści, tzn. od zamknięcia tego bloku z treścią aż do końca.
Potem każda podstrona/artykuł będzie plikiem .php, w którym musisz zrobić coś takiego:

  1. <?php require_once('top.php); ?>
  2. Tutaj treść pliku. Wpisujesz tu co chcesz, tzn. treści artykułów itd.
  3. <?php require_once('bottom.php'); ?>
Sevox
Niby wszystko działa jak powinno, ale jak mam ten bottom.php, to wsadziłem tam stopkę, a ona w stylach css miała clear:both, więc była przyklejona do tego wyżej. Jak mam zrobić aby stopka była przyklejona do każdego artykułu .php jakieś 5px pod nim?
croc
Podejrzewam, że po prostu nie w tym miejscu zacząłeś plik bottom.php. Wrzuć tu może kod HTML? A swoją drogą, to są lepsze metody czyszczenia floatów niż clear. Nie znalazłem polskiego artykułu, więc po angielsku:

http://www.quirksmode.org/css/clearing.html
Sevox
Index.php - http://wklej.org/id/640560/
bottom.php - http://wklej.org/id/640566/
style.css - http://wklej.org/id/640563/

Proszę o pomoc jak wyrównać wszystko, bo teraz to mi się takie coś zrobiło sciana.gif :

http://img507.imageshack.us/img507/5980/screenfcl.png
croc
Dlaczego masz cały szablon w bottom.php? Jeśli dobrze spekuluję co tu jest stałe a co nie, to powinieneś mieć tak:

top.php:
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" lang="pl"xml:lang="pl">
  4.  
  5. <head>
  6. <title>Kanter Strajk | Kompedium wiedzy</title>
  7. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  8. <link rel="stylesheet" type="text/css" href="css/style.css" />
  9. <link rel="Shortcut icon" href="images/skull.ico" />
  10. <link rel="stylesheet" type="text/css" href="css/sdmenubyme.css" />
  11.  
  12. <script type="text/javascript" src="js/sdmenu.js">
  13. /***********************************************
  14. * Slashdot Menu script- By DimX
  15. * Submitted to Dynamic Drive DHTML code library: <a href="http://www.dynamicdrive.com" target="_blank">http://www.dynamicdrive.com</a>
  16. * Visit Dynamic Drive at <a href="http://www.dynamicdrive.com/" target="_blank">http://www.dynamicdrive.com/</a> for full source code
  17. ***********************************************/
  18. </script>
  19. <script type="text/javascript">
  20. // <![CDATA[
  21. var myMenu;
  22. window.onload = function() {
  23. myMenu = new SDMenu("my_menu");
  24. myMenu.init();
  25. };
  26. // ]]>
  27. </script>
  28. </head>
  29. <body>
  30. <div id="wrapper">
  31. <a id="logo" href="index.html" title="KanterStrajk">
  32. <img src="images/logo6.png" alt="KanterStrajk" />
  33. </a>
  34.  
  35. <div id="align"></div>
  36. <div id="menuGorne">
  37. <ul>
  38. <li class="m_news"><a href="http://kanterstrajk.xaa.pl/index.php" title="News">News</a></li>
  39. <li class="m_forum"><a href="menu/forum.html" title="Forum">Forum</a></li>
  40. <li class="m_ostronie"><a href="http://kanterstrajk.xaa.pl/ostronie.html" title="O stronie">O stronie</a></li>
  41. <li class="m_faq"><a href="http://kanterstrajk.xaa.pl/faq.html" title="FAQ">FAQ</a></li>
  42.  
  43. <li class="m_kontakt"><a href="menu/kontakt.html" title="Kontakt">Kontakt</a></li>
  44. </ul>
  45. </div>
  46. <div id="box4" class="menuright"></div>
  47. <div id="box5" class="bocznemenu"><script class="kalendarz" type="text/javascript" src="http://404bajery.pl/kalendarz/kal.php?tlo=0c71b8&czcionka=fff&nag=0096ff&dni=44b2ff&dzis=001f35&szer=150"></script>
  48. <p class="twoje">Twój adres IP to:</p><p class="ip"><script type="text/javascript" src="http://404bajery.pl/ip/1ip.php?color=&txt=&mig=false&kus=false"></script></p>
  49. <div id="guest"><?php
  50. $plik = "online.html";
  51. $czas = 30;
  52. $t = time();
  53. $ip = $HTTP_SERVER_VARS['REMOTE_ADDR'];
  54. $u = explode("\n", str_replace("\r", "", @join("", @file($plik))));
  55. foreach($u as $i => $v) {
  56. $e = explode("|", $v);
  57. if($e[0] == $ip || $e[1] < $t) unset($u[$i]);
  58. }
  59. $u[] = $ip . "|" . ($t + $czas);
  60. $fp = fopen($plik, "w");
  61. flock($fp, 2);
  62. fputs($fp, join("\n", $u));
  63. flock($fp, 3);
  64. fclose($fp);
  65. echo 'Gości online: '.count($u);
  66. ?></div>
  67.  
  68. <div id="imiennik"><p class="imieniny">Dziś są imieniny:</p><p class="imiona"><script type="text/javascript" src="http://404bajery.pl/imieniny/1imieniny.php?color=&txt=&mig=false&kus=false"></script></p></div>
  69. <div id="bottomright"></div>
  70. </div>
  71. <div id="topright"><b class="rozne">Różne</b></div>
  72. <div id="my_menu" class="sdmenu">
  73. <div>
  74. <span class="CS1-1"><b class="bold">Menu główne </b><i class="CS1">Counter Strike 1.6</i></span>
  75.  
  76. <a href="http://tools.dynamicdrive.com/imageoptimizer/"><b class="strzalki">&raquo;</b> Co to jest CS 1.6?</a>
  77. <a href="http://tools.dynamicdrive.com/imageoptimizer/"><b class="strzalki">&raquo;</b> CS 1.6 Jak zacząć?</a>
  78. <a href="http://tools.dynamicdrive.com/favicon/"><b class="strzalki">&raquo;</b> CS 1.6 Konfiguracja</a>
  79. <a href="http://www.dynamicdrive.com/emailriddler/"><b class="strzalki">&raquo;</b>CS 1.6 Bronie</a>
  80. <a href="http://tools.dynamicdrive.com/password/"><b class="strzalki">&raquo;</b> CS 1.6 Postacie</a>
  81. <a href="http://tools.dynamicdrive.com/gradient/"><b class="strzalki">&raquo;</b> CS 1.6 Mapy</a>
  82.  
  83. <a href="http://tools.dynamicdrive.com/button/"><b class="strzalki">&raquo;</b> Steam co i jak</a>
  84. </div>
  85. <div>
  86. <span class="CS1-1"><b class="bold">Ligi </b><i class="CS1">Counter Strike 1.6</i></span>
  87. <a href="http://www.dynamicdrive.com/recommendit/"><b class="strzalki">&raquo;</b> CS 1.6 Non Steam</a>
  88. <a href="http://www.dynamicdrive.com/link.htm"><b class="strzalki">&raquo;</b> CS 1.6 Steam</a>
  89.  
  90. <a href="http://www.dynamicdrive.com/resources/"><b class="strzalki">&raquo;</b> CS 1.6 ESL</a>
  91. <a href="http://www.dynamicdrive.com/resources/"><b class="strzalki">&raquo;</b> CS 1.6 Allplay</a>
  92. </div>
  93. <div class="collapsed">
  94. <span class="CS1-1"><b class="bold">Skrypty </b><i class="CS1">Counter Strike 1.6</i></span>
  95. <a href="http://www.javascriptkit.com"><b class="strzalki">&raquo;</b> CS 1.6 No-Recoil</a>
  96. <a href="http://www.cssdrive.com"><b class="strzalki">&raquo;</b> CS 1.6 Duck-Shot</a>
  97. <a href="http://www.codingforums.com"><b class="strzalki">&raquo;</b> CS 1.6 Awp-Shot</a>
  98. <a href="http://www.dynamicdrive.com/style/"><b class="strzalki">&raquo;</b> CS 1.6 Spam-Script</a>
  99. <a href="http://www.dynamicdrive.com/style/"><b class="strzalki">&raquo;</b> CS 1.6 Chat OFF/ON</a>
  100. <a href="http://www.dynamicdrive.com/style/"><b class="strzalki">&raquo;</b> CS 1.6 Auto-Defuse</a>
  101. <a href="http://www.dynamicdrive.com/style/"><b class="strzalki">&raquo;</b> CS 1.6 Auto-Voice</a>
  102. <a href="http://www.dynamicdrive.com/style/"><b class="strzalki">&raquo;</b> CS 1.6 Quiet-Defuse</a>
  103. <a href="http://www.dynamicdrive.com/style/"><b class="strzalki">&raquo;</b> CS 1.6 Fast-Rotation</a>
  104. <a href="http://www.dynamicdrive.com/style/"><b class="strzalki">&raquo;</b> CS 1.6 Reload-Abort</a>
  105.  
  106. </div>
  107. <div>
  108. <span class="CS1-1"><b class="bold">Polecane strony </b><i class="CS1">Counter Strike 1.6</i></span>
  109.  
  110. <a href="?foo=bar"><b class="strzalki">&raquo;</b> Wiaderko.com</a>
  111. <a href="./"><b class="strzalki">&raquo;</b> CSCenter.pl</a>
  112. <a href="dgdf"><b class="strzalki">&raquo;</b> Blacklisted.pl</a>
  113. <a href="blabl"><b class="strzalki">&raquo; </b>ESL.eu</a>
  114. <a href="blabl"><b class="strzalki">&raquo; </b>Allplay.pl</a>
  115. </div>
  116.  
  117. </div>
  118. <div id="top">


bottom.php:
  1. <div id="box3" class="stopka">
  2. <div id="licznik"><b class="strony">Odwiedzin strony :</b><script type="text/javascript" src="http://404bajery.pl/licznik/licz.php?id=15031755&start=0&min=7&mode=views&typ=2"></script></div>
  3. <p id="tekst"><b>Copyright ˆ 2011 Kanter Strajk.xaa.pl.</b>
  4. Projekt i prowadzenie serwisu: <u>Camil Jacques.</u></p>
  5. </div>
  6.  
  7. </div>
  8. </body>
  9. </html>


Każda podstrona to ma być osobny plik PHP z takim kodem, jaki Ci podałem na górze.
Sevox
<div id="top">

To już jest ten pierwszy box, więc go usunąłem z top.php.

BOSHE caly czas mi ten tekst z artykulu (coijak.php) :

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" lang="pl"xml:lang="pl">
  4.  
  5. <head>
  6. <title>Kanter Strajk | Kompedium wiedzy</title>
  7. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  8. <link rel="stylesheet" type="text/css" href="css/style.css" />
  9. <link rel="Shortcut icon" href="images/skull.ico" />
  10. <link rel="stylesheet" type="text/css" href="css/sdmenubyme.css" />
  11. </head>
  12. <body>
  13. <div id="wrapper">
  14. <?php require_once('top.php'); ?>
  15. <div id="coijak">
  16. <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean tincidunt accumsan purus. Maecenas augue ante, interdum quis lacinia at, vulputate a nulla. Suspendisse potenti. Integer cursus suscipit orci vel viverra. Maecenas quis sem orci, sed tristique libero. Vestibulum facilisis arcu non dolor congue interdum et sit amet arcu. Aliquam placerat malesuada nibh in commodo. Cras ultrices, eros eu tincidunt fringilla, erat tortor egestas odio, eget lacinia enim mauris non enim. Phasellus tempus augue quis ipsum molestie elementum. Aliquam in lobortis nisl. Morbi metus enim, malesuada nec rutrum et, vehicula id purus. Quisque semper arcu nec turpis ultricies sit amet vehicula lorem laoreet. Ut sagittis, diam adipiscing convallis aliquet, orci velit iaculis augue, quis blandit libero sem eu arcu. Maecenas tempor neque ligula.
  17.  
  18. Aenean lacus quam, aliquet vel venenatis eget, iaculis eu lorem. Praesent id urna risus, porta placerat turpis. Aenean sed diam ligula. Nunc porta magna mollis velit sagittis luctus. Nunc dui arcu, tincidunt tempor ornare eu, mattis ac tortor. Sed suscipit tincidunt eros vitae ornare. Maecenas at ullamcorper dui. Nunc mollis orci metus, ut pellentesque massa. Vivamus ac faucibus sapien. Pellentesque a risus vitae neque egestas sodales in et ante. Nullam commodo dolor in massa gravida et mattis massa ultrices. Vestibulum congue volutpat urna, eu blandit mauris consectetur nec. Curabitur congue elementum dui, quis venenatis mi tincidunt nec.
  19.  
  20. Suspendisse nec nibh ut felis vestibulum sodales et id dui. Sed ut tellus sed nibh consectetur faucibus. Quisque cursus purus a lorem ultrices malesuada. In eros nulla, sodales eget auctor id, aliquam vel velit. Nulla vehicula, turpis a rutrum suscipit, leo est convallis lectus, ac scelerisque orci ipsum eu elit. Duis non mauris mi. Nulla facilisi. Ut ac nisi quis metus facilisis tincidunt quis eget quam. Cras sit amet nulla tincidunt magna hendrerit cursus eu eget metus. Vivamus est odio, volutpat id ornare eget, mollis ac nisi. Proin ante felis, hendrerit tempor tincidunt at, cursus in libero.
  21.  
  22. Nulla non lectus vitae eros varius posuere. In vitae orci nisi, aliquam dapibus mauris. Aenean varius purus tristique quam placerat mollis. Ut metus velit, fermentum ut cursus nec, cursus vel libero. Curabitur convallis, magna nec interdum dapibus, tortor turpis vestibulum orci, tincidunt condimentum magna risus vel elit. Maecenas vitae sagittis arcu. Aliquam vestibulum nibh non dolor commodo semper. Donec sit amet eros sem, et ullamcorper sem. Nam hendrerit tortor in leo mattis vel sagittis tellus feugiat. Curabitur eget tortor sit amet nulla gravida sollicitudin eget et dolor. Vivamus sollicitudin ullamcorper risus, suscipit aliquet orci suscipit tempus.
  23.  
  24. Phasellus congue viverra massa eu porttitor. In hac habitasse platea dictumst. Cras et libero nec nibh ultrices venenatis. Sed nec lacus nulla, eu ullamcorper neque. Nulla volutpat erat vel dui dictum congue. Maecenas pulvinar adipiscing erat, in tincidunt tortor bibendum eu. In hac habitasse platea dictumst. Quisque ut erat neque, at consectetur ipsum. Praesent cursus vulputate urna, id egestas sem pulvinar id. Fusce at velit erat. </p>
  25. </div>
  26. <?php require_once('bottom.php');?>
  27. </div>
  28. </body>
  29. </html>

Wywala tekst nie wiadomo gdzie, croc mógłbyś do mnie napisać na gg? Proszę, gg: 19506176 .
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.