Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Własny CMS - problem z treścią podstron.
BenekeX2
post
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 9.09.2011

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


Witam

Chciałbym stworzyć własny mini cms, który będzie z panelu administratora mógł tworzyć menu, podstrony i stopkę na początek.
Podstawy PHP znam SQL znam dość dobrze, wiec z MySQL nie będzie problemu.
Jestem na etapie projektowania tego wszystkiego sobie w głowie i na kartce i mam pewne pytanie:
Jak rozwiązać dodawanie podstron z panelu admina. Czy przesyłać całą zawartość do mysql i potem pobrać na stronę po odpowiednim id czy jak to zrobić żeby było optymalnie (wydaje mi się ze to kiepski pomysł) , bo np z menu nie ma problemu bo wyśle sobie do bazy adres i tytuł i potem pobiorę co będę chciał i porównam z aktualnym adresem.

Z góry dzięki za odpowiedz

Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 12)
lobopol
post
Post #2





Grupa: Zarejestrowani
Postów: 1 729
Pomógł: 346
Dołączył: 4.04.2009

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


Gdzieś dane strony musisz trzymać Najprostsza opcja to tabela (i dla takiej strony raczej najlepsza) w formie:
  1. page:
  2. -id
  3. -url //potrzebny jeżeli chcesz strony odpalać po ich nazwach, a nie id pamiętać trzeb o tym, aby walidować adresy i nie dopuszczać niepoprawnych. Dodatkowo pole powinno być unikalne
  4. -url_title //w menu link powinien mieć formę <a href="url">url_title</a>
  5. -title -meta title (niekonieczne)
  6. -description -meta description (niekonieczne)
  7. -keywords -meta keywords(niekonieczne)
  8. -content - sama treść strony czy plain text, czy bbcode czy html to już twoja wola
  9. -status (tinyint :P wolę niż enuma) 0 strona w koszu, 1 strona opublikowana, 2 strona nieaktywna, 3 strona np. promowana, 4 jak sobie wymyślisz inny itd.


Wyciągnięcie menu to bierzemy tylko url i url_title gdzie status = 1 lub 3(jeżeli mamy ten status)

Wyświetlenie strony szukamy w bazie czy jest strona o takim adresie jak w pasku i czy ma status 1 lub 3

Można to oczywiście na plikach zrobić, ale znacznie lepszą opcją jest baza


--------------------
Go to the top of the page
+Quote Post
BenekeX2
post
Post #3





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 9.09.2011

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


jeżeli dodam pole url to chyba nie będę się musiał bawić z htaccessem w tym przypadku ?
Go to the top of the page
+Quote Post
GameMaker
post
Post #4





Grupa: Zarejestrowani
Postów: 149
Pomógł: 2
Dołączył: 31.01.2010
Skąd: Konstancin-Jeziorna

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


Bez htacces nie otrzymaszm łatwych urli np :

http://costam.pl/1,lubie_tamt_i_owo.html

Tylko bedziesz musiał uzyc cos takiego :

http://costam.pl/?page=1


--------------------
Movie CMS v 0.1 - Postęp 37 45 49 53 69 %
Go to the top of the page
+Quote Post
BenekeX2
post
Post #5





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 9.09.2011

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


a jak to jest w przypadku edytorów tekstów np takich jak tu jest na forum gdzie mogę np pogrubic, wyjustować i tak dalej, a tym sie pracuje ponowienie jak z formularzem ? bo jak dodam kilka podstron to chce miec możliwość odrazu edycji tej podstrony. Ten edytor też przechowuje tekst w bazie danych i pobiera go i aktualizuje na bierząco ?

Go to the top of the page
+Quote Post
lobopol
post
Post #6





Grupa: Zarejestrowani
Postów: 1 729
Pomógł: 346
Dołączył: 4.04.2009

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


Poszukaj wysiwyg w google, mnóstwo ich jest (np. tinymce, fckeditor i wiele innych część http://www.queness.com/post/212/10-jquery-...h-text-editors)


--------------------
Go to the top of the page
+Quote Post
BenekeX2
post
Post #7





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 9.09.2011

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


Mam taki kawałek kodu:

  1. if($_GET['id'] == '1')
  2. {
  3. echo'<a href="index.php?id=1&add=new"></a>';
  4.  
  5. if($_GET[add] == 'new') {
  6. echo"dodaj nowe";
  7. }
  8. }


po wejsciu na podstrone index.php?id=1 mam link do nastepnej po kliknieciu w niego dodaje mi tekst do poprzeniej, jak zrobić żeby po wejsciu na index.php?id=1&add=new wyświetlała sie tylko ta zawartość która na niej jest bo w tej chwili spełnia mi cały czas oba warunki
Go to the top of the page
+Quote Post
Daiquiri
post
Post #8





Grupa: Administratorzy
Postów: 1 552
Pomógł: 211
Dołączył: 7.07.2009
Skąd: NJ




Dodaj warunek w stylu:
  1. if ($_GET['id'] == '1' && !isset($_GET['add'])) // jeżeli w adresie jest $_GET['id'] równe 1 i nie ma ustawionego $_GET['add']
O ile dobrze Cię rozumiem.
Go to the top of the page
+Quote Post
BenekeX2
post
Post #9





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 9.09.2011

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


Chodzi mi o to że gdy wchodze w ?id=1 mam link do ?id=1&add=new. Jak klikne w ten link to wyświetla mi sie zawartość tej strony i dodana zawartość poprzedniej. A chce żeby wyświetlała się tylko zawartość add=new
Go to the top of the page
+Quote Post
Daiquiri
post
Post #10





Grupa: Administratorzy
Postów: 1 552
Pomógł: 211
Dołączył: 7.07.2009
Skąd: NJ




No to przecież dodając powyższy warunek (zamiast if ($_GET['id'] == 1) tak właśnie się stanie. Zobaczysz jego zawartość tylko wtedy, gdy $_GET['add'] nie zostanie ustawione. Potem wystarczy dodać drugi warunek poniżej ale już z "ustawionym" $_GET['add'].

Opcjonalnie dodać warunek if (!isset($_GET['add'])) przed wyświetleniem linka.
Go to the top of the page
+Quote Post
BenekeX2
post
Post #11





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 9.09.2011

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


Mam taki problem z połączeniem z MySQL. Wywala mi taki błąd

  1. Warning: mysql_connect() [FUNCTION.mysql-connect]: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)


Nastąpiło to wtedy gdy chciałem przenieść swoj skrypt z localhosta na serwer yoyo.pl zeby go przetestować. Na localu działa bez problemu.

Moj skrypt połączenia wygląda tak:

  1. <?php
  2. include ('db_config.php');
  3.  
  4. function db_connect() {
  5.  
  6. $connect = mysql_connect(HOST,USER,PASSWORD);
  7.  
  8. if(!connect) {
  9. }
  10. if(!$db = mysql_select_db(DB)){
  11. }
  12. return $connect;
  13. }
  14. ?>


plik config.php to zdefinowane paramety połączenia.

Jak myslicie gdzie może być błąd ?
Go to the top of the page
+Quote Post
Damonsson
post
Post #12





Grupa: Zarejestrowani
Postów: 2 355
Pomógł: 533
Dołączył: 15.01.2010
Skąd: Bydgoszcz

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


Zmieniłeś te wszystkie parametry (HOST, USER, PASSWORD, DB) w db_config.php na takie jakie Ci przydzielono na yoyo.pl?
Go to the top of the page
+Quote Post
BenekeX2
post
Post #13





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 9.09.2011

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


no oczywisicie.
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 Aktualny czas: 19.08.2025 - 18:13