ďťż

[html, php, java?]Jak zrobić system szablonów aby arty dodawała osoba nieznająca HTML-a,PHP

       

Podstrony


telcocafe

Witam!

Myślałem już duużo czasu nad spełnieniem jednego z wymagań, które stawiają mi dwoje klienci... znacz trudno powiedzieć że to klienci bo to osoby które znam a strony robię nieodpłatnie, m.in. dla szkoły.

Aktualności, Galerię zdjęć, dział kontakt i wiele innych zrobiłem. Ale jedynym teraz problemem są artykuły - jak je wstawiać, skoro nikt nie zna HTML-a?

Stronę mam tak zrobioną(w PHP):
index.php to główny plik, jak się przekazuje parametrem GET pokaz nazwę pliku i on sprawdza czy jest to artyku czy próba wstrzyknięcia kodu - jak pierwsze dołącza do body, jak drugie wali alert bezpieczeństwa. Osoby, dla których robię strony nie znają HTML-a(wiedzą tylko że istnieje :P ). Nie mogą więc stworzyć odpowiedniego pliku, bez nagłówków HEAD, aby można to było wkleić w sekcję BODY. Strona jest "podzielona" na 2 szablony - top.php i bottom.php.

Jak zrobić, aby osoba nieznająca HTML-a mogła dodawać artykuły?

Dostępne języki w których skrypt mogę zrobić(jakikolwiek ;) ):
- PHP naturalnie
- Java(w tym języku jest aplet zarządzania)
- AJAX.

Proszę, pomóżcie!
W razie czego na drobną zmianę struktury index.php mogę się zgodzić :)
Użytkownik Tomek92 edytował ten post 08 sierpień 2008, 15:21


Z tego co widzę wnioskuję że ten kod to jakaś amatorka.. jeszcze applet java, sprawdzanie "czy to plik systemowy". Bazy danych, SQLite w PHP5. Jak ktoś nie zna HTML to niech się nauczy, albo też dodaj obsługę BBcode czy czegoś podobnego. Ewentualnie też edytory WYSIWYG, ale bez wodotrysków. I też zaleciłbym stosowanie i naukę jakiegoś prostego, lecz użytecznego frameworka - cakePHP, kohava czy codeIgniter.
Użytkownik Riklaunim edytował ten post 08 sierpień 2008, 15:13
Co do frameworków - ok, zobaczę :)
Amatorka... no cóż, w PHP nic nie robiłem od roku prawie :( W J2EE sprawa prosta - Spring Framework i Spring Web MVC. Ale tu o wielu rzeczach już niestety nie pamiętam... Staram się robić wszystko tak, aby było proste ale skuteczne&zgodne ze standardami. Tylko dlatego nie walnąłem Iframe, chociaż pewnie sprawdziłby się.

A aplet Java dlatego że szybciej mi się robi w tym języku ;) A jak chcesz możesz aplikację Java Web Start uruchomić :)

Plik systemowy - ups, źle się wysłowiłem. Chodzi o to, czy nikt nie próbuje przez tablicę GET walnąć własnego kodu. W J2EE Spring tego pilnuje, a tutaj samodzielnie muszę wykombinować.

Baza to MySQL 5, PHP5. W bazie trzymam newsy i info o zdjęciach.
Dzięki za szybki odzew, zobaczę te frameworki :)

//EDYCJA:

OK, chyba skorzystam z Kohana bo zapewnia OOP oraz jest w miarę łatwy.

Niestety, nie zmienia to faktu, że nadal nie mam jak dołączać plików artykułów :( Edytor WYSIWYG - też o tym myślałem, ale no właśnie takich plików stworzonych przez taki edytor nie mogę dołączać do plików PHP. BBCode... zobaczę, ale wątpię aby się chcieli nauczyć BBCode(chociaż wg. mnie jest banalny).
Użytkownik Tomek92 edytował ten post 08 sierpień 2008, 18:58
piszesz wysiwyg, ale dane i tak przerabiasz na postać bbcodu, żeby zachować elastyczność,
tak przerobiony kod wrzucasz do MySQL, i dalej już chyba wiesz co robić :)



BBCode mówimy NIE!
To jest najgłupsze rozwiązanie jakie istnieje, to jest niczym html 1.0 z kwadratowymi nawiasami. BBcode to jest s/\[(.*)\]/\<$1\>/ig - jeden wielki PHAIL.

Użyj textile/markdown! Jest o wiele wygodniejszy, prostszy i ładniejszy. Stosując w/w możesz w ogóle zrezygnować z WYSIWTF, każdy klient jest w stanie pisać *pogrubienie* czy /pochylenie/, albo _podkreślenie_.
# listy
# również
* są bardzo
* wygodne

Najprotsze rozwiazanie - smieszne bo smieszne, ale skuteczne i banalne do zrobienia - to wykorzystanie czesci joomli (albo samego jej wysiwyg, ale najprosciej zwyczajnie zainstalowac joomle). Oczywiscie instalujesz ja w innym katalogu niz normalna strone. W jej panelu zarzadzania masz swietny panel zarzadzania artykulami, oraz sam wysiwyg, ktory tez jest swietny. Do wyswietalnia tych artukulow oczywiscie NIE uzywasz joomli - ona zapisuje cale artykuly w bazie (w postaci czystego html mieszanego z css), wiec wystarczy w linku do danego pliku podac id artykulu, a w kodzie odczytac z bazy jego tresc i wrzucic bezposrednio w kod. Dzieki temu jedyny kod jaki musisz sam napisac to odczytanie jednego pola z bazy o id przekazanym z GET,i echo jego do kodu. Jakbym sie nie jasno wyjasnil, to pytaj, ale z tego co piszesz to bedzie dla ciebie najlepsze rozwiazanie.
Użytkownik Deadeye edytował ten post 10 sierpień 2008, 16:23
Wszystkim, a w szczególności Einzeinbleth i Deadeye dziękuję za pomoc. Otóż skończyłem już prace nad tym projektem i wszystko się super przyjęło.

Zmiksowałem pomysły Einzeinbleth i Deadeye'a - Joomla! korzysta z TinyMCE, ściągnąłem to, plugin BBCode przerobiłem aby obsługiwał Textile. Z poziomu apletu zrobiłem prosty edytor(wsparcie Textile dzięki Textile4J), ponadto, jako alternatywę dałem stronę administracyjną(jak Zaplecze w Joomla!) a w niej zmodyfikowanego TinyMCE jako edytor WYSIWYG.

Z tego co wiem, aplet i Tiny mają podobną ilość użytkowników(dałem licznik dla otwarć apletu i zaplecza). Dodajmy - zadowolonych użytkowników :) Każdy korzysta z tego, co preferuje(aplikacja czy specjalna strona).
Użytkownik Tomek92 edytował ten post 16 sierpień 2008, 20:17
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.