Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Ajax.class - struktura
wlamywacz
post
Post #1





Grupa: Zarejestrowani
Postów: 535
Pomógł: 27
Dołączył: 3.05.2005

Ostrzeżenie: (20%)
X----


Posiadam stronę w 40% opartą o ajax. Strona napisana obiektowo według wzorca MCV. Jednak doszedłem do obsługi AJAXu na stronie i mam problem z jego obsługą po stronie php. Jak zrobić to optymalnie?

  1. <?php
  2. public function acceptModerKoment($id, $user) { //class coment
  3.  
  4. $zapytanie = db::query("UPDATE `komentarze` SET `mod` = '1' WHERE (`id` = '$id' AND `user` = '$user')");
  5. if($zapytanie) {
  6. echo 'ok';
  7. } else {
  8. echo 'Wystąpił błąd podczas moderacji komentarza';
  9. }
  10. }
  11.  
  12. function moderacja() {
  13. $id = addslashes($_POST['id']);
  14. $typ = addslashes($_POST['typ']);
  15.  
  16. if($typ == 'usun') {
  17. echo coment::delateModerKoment($id, $_SESSION['zalogowany']);
  18. }
  19. else if($typ == 'dodaj') {
  20. echo coment::acceptModerKoment($id, $_SESSION['zalogowany']);
  21. }
  22. }
  23. ?>

Mija to się z wzorcem MCV i jest nieporęczne bo mogę wykorzystać to tylko w tym przypadku...

  1. <?php
  2. public function naruszenie($user, $foto, $kto) { //class glowne
  3. $zapytanie = db::query("INSERT INTO `naruszenia` ( `user` , `foto`, `kto` )VALUES ('$user', '$foto', '$kto')");
  4. if($zapytanie) {
  5. return true;
  6. }
  7. }
  8.  
  9. function naruszenie() {
  10. $foto = addslashes($_POST['foto']);
  11. $user = addslashes($_POST['user']);
  12. if(!empty($_SESSION['zalogowany'])) {
  13. if(glowne::naruszenie($user, $foto, $_SESSION['zalogowany'])) {
  14. echo "Dziękujemy za zgłoszenie";
  15. } else {
  16. echo "Zgłoszenie już istnieje w bazie";
  17. }
  18. } else {
  19. echo "Aby zgłosić naruszenie musisz być zalogowany!";
  20. }
  21. }
  22. ?>

A to tworzy śmietnik w kodzie przy dłuższych komunikatach i treściach przesyłanych AJAXem.


webdicepl
Poprawiono ;P

Ten post edytował wlamywacz 20.04.2008, 20:28:30
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
MMPrime
post
Post #2





Grupa: Zarejestrowani
Postów: 79
Pomógł: 12
Dołączył: 23.04.2008

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


Cytat
Jak to co? Gdy ktoś wpisze taki sam adres, jaki ty wysyłasz rządanie AJAXowe, to wyświetli mu się biała strona, no może tam 1. Zwracając komunikat, wyświetli się komunikat.

Pytanie kto tam wejdzie, musiałby nasłuchiwać wyjścia na firewallu lub monitorować nagłówki wysyłane/odbierane przez przeglądarkę internetową by zdobyć adres url.

Cytat
Oszczędzanie pamięci w php?

Framework mam tak napisany by żądania ajaksowe wymagały jak najmniejszej drogi przez aplikację. Po co mam ładować całe pliki językowe, skoro zwracam typ boolean lub tablicę z danymi(potem obróbka ich przez JavaScript).

Dla przeglądarki nie jest to duże obciążenie, gdyż zajmuje to tylko parę kb w pamięci i jest ładowane za pierwszym razem z adresu url, przy każdym kolejnym wywołaniu z pamięci ram. Aktualnie tworzy sie oprogramowanie przerzucając niektóre obliczenia/dane na użytkowników tak by odciążyć maszyny serwerowe - np. podstawowa walidacja danych JavaScript. Jaki jest cel odpalania całej maszyny tylko po to by sprawdzić czy pole 'username' wysłane z formularza nie jest puste. Najpierw sprawdzamy wszystko w języku client-side, dopiero gdy on powie że dane są poprawne można uruchomić server-side i w nim sprawdzić poprawność danych.
Go to the top of the page
+Quote Post
Sedziwoj
post
Post #3





Grupa: Zarejestrowani
Postów: 793
Pomógł: 32
Dołączył: 23.11.2006
Skąd: Warszawa

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


Cytat(MMPrime @ 23.04.2008, 16:00:43 ) *
Framework mam tak napisany by żądania ajaksowe wymagały jak najmniejszej drogi przez aplikację. Po co mam ładować całe pliki językowe, skoro zwracam typ boolean lub tablicę z danymi(potem obróbka ich przez JavaScript).


Dorzuć leniwe wywoływanie, to nie będzie potrzeby usuwać. A załadowanie dodatkowej klasy (widoku) który robi echo, jest pomijalnym obciążeniem, a sam potok przetwarzania się dzięki temu nie zmienia, więc ktoś zapozna się z jedną drogą, a jak masz inaczej, to trzeba poznawać wszystkie, wiem że to się wydaje głupie w Twoim przypadku, tylko oby przyszłość nie pokazała, że jednak będziesz miał przez to kupę roboty, bo tak zazwyczaj jest. Po to są pewne schematy, aby ułatwić nam życie, im więcej się ma doświadczenia z różnymi rzeczami, tym lepiej się to widzi.
Go to the top of the page
+Quote Post

Posty w temacie
- wlamywacz   Ajax.class - struktura   20.04.2008, 20:23:03
- - webdicepl   Zmień tytuł tematu, forum to nie podwórko.   20.04.2008, 20:25:08
- - Hacker   Jeżeli tak wygląda Twój kod, to ja tu ni...   20.04.2008, 21:02:42
- - wlamywacz   Chłopie to są przykłady w drugim wyraźnie widać że...   20.04.2008, 21:06:04
- - Hacker   To może daj jakiś lepszy kawałek kodu i powiedz co...   20.04.2008, 21:10:33
- - wlamywacz   Przeczytaj całość i nie rób offtopu [PHP] pobier...   20.04.2008, 21:13:59
- - SHiP   Huh nie rozumiem jednego: po co ludzie trzymają si...   20.04.2008, 21:31:53
- - wlamywacz   Jedynie baza innej możliwości nie przewiduje   20.04.2008, 21:34:10
- - Sedziwoj   @SHiP Jak nie wiesz po co jest MVC, to Twoja spraw...   20.04.2008, 23:21:00
- - wlamywacz   Dlatego pytam jak wy rozwiązalibyście, macie rozwi...   21.04.2008, 07:34:53
- - bim2   Zależy jak masz napisany widok. Ja przy wysyłaniu ...   22.04.2008, 09:51:12
- - wlamywacz   Niezbyt Cię rozumiem jak chciałeś mi pomóc... Po c...   22.04.2008, 15:09:16
- - Sedziwoj   Ogólnie powinieneś mieć tak, że przekazujesz dane ...   22.04.2008, 15:55:14
- - bim2   Chodziło mi o to, że przekazujesz to do ...   22.04.2008, 20:30:40
- - Sedziwoj   @bim2 A nie powinieneś użyć strategi? Bo takie ify...   22.04.2008, 22:56:41
- - MMPrime   W wypadku ajaksu tworze dodatkowe kontrolery/metod...   23.04.2008, 05:58:47
- - Sedziwoj   @MMPrime A wiesz co się dzieje potem z szybkim i w...   23.04.2008, 07:29:30
- - bim2   @Sedziwoj Strategi? Człowiek się ci...   23.04.2008, 09:52:16
- - MMPrime   CytatA wiesz co się dzieje potem z szybkim i ...   23.04.2008, 10:13:29
- - bim2   Ale kto chce wysyłać html? Jeśli coś piszemy, bądź...   23.04.2008, 10:19:59
- - MMPrime   Patrząc po Twoim listingu z postu wyżej widzę już ...   23.04.2008, 10:38:34
- - bim2   Za dużo? Moje serwisy są wielojęzykowe, dlatego za...   23.04.2008, 10:54:35
- - wlamywacz   CytatPatrząc po Twoim listingu z postu wyżej widzę...   23.04.2008, 10:59:26
- - MMPrime   Ja natomiast robię serwisy SEO Friendly tak...   23.04.2008, 11:00:12
- - wlamywacz   A więc ja jestem w tym 1% bo jak sobie wyobrażasz ...   23.04.2008, 11:05:42
|- - Sedziwoj   Cytat(wlamywacz @ 23.04.2008, 12:05:4...   23.04.2008, 11:45:44
- - MMPrime   W formacie JSON. Nie znam serwisu o jakim mówisz,...   23.04.2008, 11:42:29
- - MMPrime   CytatBo robisz SEO Friendly stronę, jak założymy ż...   23.04.2008, 11:51:48
|- - Sedziwoj   Cytat(MMPrime @ 23.04.2008, 12:51:48 ...   23.04.2008, 11:59:24
- - wlamywacz   W tym problem jak obsłużyć te dane do szablonu ? A...   23.04.2008, 11:52:22
- - MMPrime   wlamywacz: to już musisz sobie w JavaScript zaproj...   23.04.2008, 12:22:29
|- - Sedziwoj   Cytat(MMPrime @ 23.04.2008, 13:22:29 ...   23.04.2008, 13:53:19
- - bim2   No i shoutbox. @MMPrime Jak co to ma do rzeczy? ...   23.04.2008, 13:16:05
- - MMPrime   CytatNo i shoutbox. Kto w dzisiejszych czasach pod...   23.04.2008, 14:33:13
- - wlamywacz   Podstawowe pytanie: czy tak ważne jest że 3% użytk...   23.04.2008, 14:44:33
- - MMPrime   Do tych 3% należy 100% wyszukiwarek internetowych ...   23.04.2008, 14:50:05
- - bim2   Jak takie wymaganie narzuci ci zleceniodawca to ni...   23.04.2008, 14:52:27
- - MMPrime   CytatJak to co? Gdy ktoś wpisze taki sam adres, ja...   23.04.2008, 15:00:43
|- - Sedziwoj   Cytat(MMPrime @ 23.04.2008, 16:00:43 ...   23.04.2008, 16:30:39
- - MMPrime   Skróconą drogę mam jedynie w wypadku ajaksu, hm fr...   23.04.2008, 17:03:55
- - wlamywacz   CytatDo tych 3% należy 100% wyszukiwarek interneto...   23.04.2008, 18:14:14
- - MMPrime   Obsługuje formularze. SEO to trochę większy zakres...   23.04.2008, 18:25:40
- - wlamywacz   A co ma dodawanie komentarza i ocenianie do indexo...   23.04.2008, 18:42:26
- - MMPrime   To już gadżety, ale dobry programista zrobi by dzi...   23.04.2008, 21:44:30


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 24.12.2025 - 11:54