Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php][mysql] szyk strony
-szykownyziomek-
post 15.04.2008, 19:58:39
Post #1





Goście







Witam, zaczynam robić 1 strone i tak troche jestem w kropcje jakby jakis uczynny człowiek sie znalazl i mi pomogl to bede wdzieeczny winksmiley.jpg
(pisze z tutkow)
A mianowicie, mam juz napisany kawalek kodu dziala to na klasie templatowej i mam napisane newsy,... na stronie głównej odpala się lista i po kliknięicu pojawia sie news

i teraz chciałbym do tego dorzucić artykuły... i zastanawiam się jak aby pojawiały się w miejsce newsów... żeby to w miarę spójne było...

i teraz nie wiem jak to zrobić czy w tym samym pliku skopiować i jakoś zamienić żeby pojawiał się tam gdzie jest {$main}

czy zrobić oddzielny plik artykuly.php i potem includowac w wybrane miejsce, ale pojawia sie problem ze nie wyswietla mi się zamiast newsow tylko nowa strona się otwiera...

Za jakieś porady naprowadzające na trop - bądź jakieś praktyczne - będe ogromnie wdzięczny.


  1. <?php
  2.  
  3. require_once "cTemplate.php";
  4. require_once "db_inteface.php";
  5.  
  6. $page = new cTemplate;
  7. $dbase = new db_interface("kpz", "root", "root", "localhost");
  8.  
  9. if(!isset($_GET['action']))
  10. {
  11. $_GET['action'] = "";
  12. }
  13.  
  14. switch ($_GET['action'])
  15. {
  16. case "pokaz":
  17. if (isset($_GET['id']))
  18. {
  19.  
  20. // WYSWIETLA NEWS'a
  21.  
  22. $result = $dbase->get_query("
  23. SELECT * FROM newsy
  24. where id = ".$_GET['id'].";
  25. ");
  26.  
  27. if ($result)
  28. {
  29. $news = new cTemplate;
  30.  
  31. $news->assign['tytul'] = $result[0]['tytul'];
  32. $news->assign['data'] = $result[0]['data'];
  33. $news->assign['tresc'] = $result[0]['tresc'];
  34.  
  35. $page->assign['main'] = $news->parse("templates/news.html");
  36.  
  37.  
  38.  
  39. }
  40. else $page->assign['main'] = "nie znaleziono news'a";
  41. }
  42. else $page->assign['main'] = "nie wybrano zadnego news'a";
  43.  
  44. break;
  45.  
  46. default:
  47.  
  48.  
  49. // WYSWIETLA WSZYSTKIE NEWS'y
  50.  
  51.  
  52. $result = $dbase->get_query("
  53. SELECT * FROM newsy
  54. ORDER BY id DESC
  55. LIMIT 0,6
  56.  
  57. ");
  58.  
  59. if ($result)
  60. {
  61. $news = new cTemplate;
  62.  
  63. $page->assign['main'] = "";
  64. foreach ($result as $record)
  65. {
  66. $news->assign['tytul'] = "<a href=\"?action=pokaz&id=".$record['id']."\">".$record['tytul']."</a>";
  67. $news->assign['data'] = $record['data'];
  68.  
  69.  
  70.  
  71. $page->assign['main'] .= $news->parse("templates/headnews.html");
  72.  
  73. }
  74. }
  75. else  $page->assign['main'] = "brak news'ow";
  76. break;
  77. }
  78.  
  79. echo $page->parse("templates/index.html");
  80.  
  81.  
  82. ?>
Go to the top of the page
+Quote Post
xbigos
post 16.04.2008, 13:11:30
Post #2





Grupa: Zarejestrowani
Postów: 239
Pomógł: 27
Dołączył: 13.07.2005
Skąd: Jarocin

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


ten kod już gdzieś widziałem:)
http://forumphp.nq.pl/index.php?showtopic=...mp;#entry463387


a odpowiedź na Twoje pytanie:
Ja bym zrobił w rekordzie gdzie zapisujesz treści.

Dodaj sobie kolejne pole np typu bool dla newsów zrób sobie 0 a dla artykułów zrób sobie np 1. jesli jeszcze jakoś inaczej zamierzasz posortowac teksty wtedy Tworzysz sobie jako INTEGER i odpowiednio sobie ustawiasz flagi. 0,1 itd.

A jeśli ni chcesz mieć taki rodzaj wyswietlania:

Newsy
--------
tytul newsa 1
tytul newsa 2
tytul newsa 3

artykuly
----
tytul art 1
tytul art 2
tytul art 3

To wtedy modyfikujesz tylko zapytanie ktore Ci ta liste pobiera
dodajesz w newsach WHERE typ=0 w artykulach WHERE typ=1
wyswietlasz to sobie w szablonie tak samo jak robiles do tej pory i wszystko gra:)

Troche za mało opisałeś sposób wyświetlania tresci wiec mogłem sie tylko domyślać o co Ci dokładnie chodzi.


--------------------
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: 13.08.2025 - 23:12