![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 188 Pomógł: 0 Dołączył: 24.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
Mam taką funkcję kasującą polskie znaki:
i teraz drugą funkcję wyświetlającą rekordy z bazy w postaci listy:
Gdy wpisany jest do drugiej funkcji tekst np: "ŚÓŚ" link prowadzi do ...SOS (bez polskich znaków) Jeśli jednak zamiast tekstu dam tu zmienną: To adres jest dalej z polskimi znakami (np: gdy wartosc zmiennej $menu['cos'] to "ŚÓŚ"). Jak to możliwe i jak temu zapobiec? -------------------- Strona o bezpieczeństwie komputerowym
http://www.materdefense.hostzi.com |
|
|
-Jinbe- |
![]()
Post
#2
|
Goście ![]() |
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 447 Pomógł: 191 Dołączył: 26.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
-------------------- :)
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 188 Pomógł: 0 Dołączył: 24.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
Znalazłem rozwiązanie, po prostu zrobię całkiem odwrotnie -> zamiast pobierać dane z bazy i je czyścić stworzę nową kolumnę w tabeli gdzie będę dodawał już wyczyszczone dane.
Co do tego mojego projektu CMS - będzie się "to coś" składało się z 3 niezależnie działających części: - Mechanizm główny - Pakiety - Szablony Mechanizm główny zarządzał będzie działaniem całym systemem, wszystkimi opcjami, funkcjami tego CMSa. Pakiety będą to poszczególne moduły CMSa takie jak np: komentarze, newsy, obsługa bazy danych, itp. Sablony będą całkowicie oddzielone od kodu PHP. Będą to po prostu zwykłe struktury w HTMLu a w miejscach gdzie miałby być kod PHP użyte są funkcje. Na pewno będzie to lepsze od ostatniego skryptu CMSa który nie był CMSem tylko stroną z panelem administracyjnym -------------------- Strona o bezpieczeństwie komputerowym
http://www.materdefense.hostzi.com |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Od tego typu zmian jest iconv a nie jakieś śmieszne tablice.
Cytat Sablony będą całkowicie oddzielone od kodu PHP. Będą to po prostu zwykłe struktury w HTMLu a w miejscach gdzie miałby być kod PHP użyte są funkcje. To po co Ci taki szablon? Szablony powstały po to, aby ustalać znaczniki {text} zamienia na <?php echo $text;?> a nie po to aby były w nich funkcje. A jak już chcesz stosować MVC, to nie powinny być to funkcje a kod PHP. Sprowadzasz wszytko do jednego worka. Ten post edytował !*! 26.09.2012, 12:55:36 -------------------- Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta). |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 188 Pomógł: 0 Dołączył: 24.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
W ostatnim projekcie wszystko było pomieszane w jedno, wrzucone do indexa. Tutaj to wszystko rozdzieliłem. Np tak wygląda jeden z szablonów (oczywiście dopiero 1/3 tego szablonu jest gotowe):
Dzięki temu gdy chce zmienić wygląd - edytuje kod HTML i CSS, i nie mieszam się nic w kod PHP oraz gdy zmieniam PHP nie ingeruje w wygląd. Index.php wygląda mniej więcej tak (również nie gotowe):
Po prostu gdy przykładowo na stronie głównej chcemy newsy - mamy newsy. Ale gdy chcemy na stronę główną dać księgę gości, zwykłą strone - nie ma problemu - od wszystkiego są pakiety -------------------- Strona o bezpieczeństwie komputerowym
http://www.materdefense.hostzi.com |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Widzę że załapałeś, ale chyba trochę na opak. Po co Ci funkcja? Skoro to samo może robić zmienna? Czytałeś o MVC{P}? Model obrabia/odczytuje dane, a nie widok, widok może je tylko przemielić np. w pętli gdy pobierze tablice z listą menu z modelu.
Poza tym, upewnij się czy include_once jest wskazane. Ten post edytował !*! 26.09.2012, 13:13:08 -------------------- Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta). |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 188 Pomógł: 0 Dołączył: 24.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
Include_once jest oczywiście wskazane, przy dołączaniu funkcji czy klas (? chyba) w obiektowym. Jako że w wielu plikach znajdują się schematy funkcji lepiej jest użyć tego _once (przynajmniej wg. mnie)
Co do funkcji, po prostu dużo pracowałem z obróbką szablonów wordpressa i coś takiego zauważyłem, przemyślałem to i pomyślałem że to bardzo dobry pomysł. Słyszałem również, że do tego celu wykorzystujemy zwykle Smarty, jednak - zdecydowałem się na funkcje. Cytat Widzę że załapałeś, ale chyba trochę na opak. Od początku mówiłem że nowy CMS będzie przełomem we wszystkich moich projektach -------------------- Strona o bezpieczeństwie komputerowym
http://www.materdefense.hostzi.com |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
_once przy klasach (najlepiej require), przy czymś innym już nie, bo kto powiedział że to zawsze musi być to samo i wyświetlane tylko raz.
Nie wzoruj się na WP, bo jego kod jest fatalny i przestarzały. Masz w widoku funkcje, tylko co jak będziesz chciał coś zmienić, to zmieniasz kod funkcji? Ok, tylko czym to jest? Jeszcze widokiem czy już modelem? W przeciętnym projekcie masz +/-- 60 funkcji/zmiennych. Jaki jest % zużycia ramu w przypadku inicjalizacji funkcji a zmiennej? ![]() Cytat Od początku mówiłem że nowy CMS będzie przełomem we wszystkich moich projektach Przełom jest wtedy gdy pojmujesz wiedzę jaką posiadasz. Ten post edytował !*! 26.09.2012, 14:00:03 -------------------- Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta). |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 188 Pomógł: 0 Dołączył: 24.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
Cytat Nie wzoruj się na WP, bo jego kod jest fatalny i przestarzały. ciekawe... Zobaczymy co z tego wyniknie z tego CMSa. Wiem jak dużo pracy zostało do ukończenia go. Ogólne działanie widoczne jest tutaj: http://94.251.191.53/scms/ http://94.251.191.53/scms/admin Na razie przygotowany jest silnik CMSa. Nie należy się wzorować na wyglądzie bo jak już mówiłem od tego są szablony -------------------- Strona o bezpieczeństwie komputerowym
http://www.materdefense.hostzi.com |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 2 355 Pomógł: 533 Dołączył: 15.01.2010 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Ja tam się nie znam, ale czy przypadkiem, przetwarzanie formularza nie powinno być w osobnym pliku? Jeśli stosujesz MVC.
A logując się jako admin w formularzu nie widzę: action="" |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
Ja tam się nie znam, ale czy przypadkiem, przetwarzanie formularza nie powinno być w osobnym pliku? Jeśli stosujesz MVC. A logując się jako admin w formularzu nie widzę: action="" Nie musi, za to odpowiada kontroler. Ale nie oszukujmy się, tutaj nie ma MVC. materkamil wymyślił "coś", co w założeniu ma pełnić rolę systemu szablonów, ale nie bardzo ma to związek z logicznym rozdzieleniem kodu od prezentacji. Choć może poczekajmy na efekt końcowy. -------------------- Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta). |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 188 Pomógł: 0 Dołączył: 24.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
Co do formularza i action="" - nie ma tutaj czegoś takiego chociaż panel administracyjny znajduje się w innym pliku (administration.php). Tutaj najprościej mówiąc wykorzystane są sesje
-------------------- Strona o bezpieczeństwie komputerowym
http://www.materdefense.hostzi.com |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 1 195 Pomógł: 109 Dołączył: 3.11.2011 Ostrzeżenie: (10%) ![]() ![]() |
Cytat Ja tam się nie znam, ale czy przypadkiem, przetwarzanie formularza nie powinno być w osobnym pliku? Czytając wątek też o tym pomyślałem.Materkamil-to co próbujesz osiągnąć nie można nazwać w pełni programowaniem obiektowym-nie wystarczy używać funkcji, aby tak było. W PHP za bardzo może tego nie widać za to w .NET już tak- zasugerowałbym używania klas, aby odizolować kod php od html.Rozbudowujesz klasy pozostawiając kod html w spokoju jak i odwrotnie.Poczytaj o klasach i ich odmianach, korzystaj z wzorców projektowych, może wtedy będzie to zasługiwało na miano projektu robionego obiektowo. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 13.07.2025 - 04:14 |