Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Klasy i Funkcje
nowymarcin
post
Post #1





Grupa: Zarejestrowani
Postów: 19
Pomógł: 1
Dołączył: 14.11.2013

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


Witam,

Podczas nauki PHP napotkałem mały problem związany z Klasami i Funkcjami, wiem jak je pisać, wiem jak wywoływać jedną funkcję, ale nie wiem jak je połączyć w działającą całość...

Mam klasę "Baza" w tej klasie posiadam funkcję "Połączenie", "Dodanie", "Edycja", "Usunięcie", "Sprawdzanie" i teraz pytanie jest następujące.

Jak wywołać kilka funkcji na raz w odpowiedniej kolejności, czyli na przykład Połączenie ---> Dodanie ---> Sprawdzanie (IMG:style_emoticons/default/questionmark.gif)
Aby przykładowo jak ktoś kliknie wyślij na formularzu skrypt zrobi takie kółko : połączy się z bazą, następnie doda rekord, sprawdzi czy wszystko jest okej wróci do użytkownika i wyświetli potwierdzenie czynności albo błąd.

Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Lwik
post
Post #2





Grupa: Zarejestrowani
Postów: 39
Pomógł: 8
Dołączył: 11.05.2012

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


Chciałem pokazać kilka przykładów zastosowań, dlatego kilka metod klasy.
Pisząc we wskazany przez Ciebie sposób to dalej kod strukturalny. :]
Co do metodyki to tak, dzięki oop i wyjątkom jesteś w stanie efektywnie zdebugować aplikację (czyli zdecydować kiedy wysłać formularz, kiedy zwrócić wypełniony, kiedy opieprzyć człowieka za to, że jest botem;)
Przykład:
  1. class Nauka{
  2. public $dane;
  3. function setDane($val)
  4. {
  5. if(is_numeric($val))
  6. {
  7. $this->dane = $val;
  8. }else throw new Exception("Tekst przyjął złą wartość");
  9. }
  10. }
  11. try{
  12.  
  13. $data = new Nauka();
  14. $data->setDane('sasd');
  15. echo $data->dane;
  16. }catch (Exception $e)
  17. {
  18. die("Wystąpił błąd: ".$e->getMessage());
  19. }

Połączenie z bazą w innych klasach możesz definiować w kilka sposobów:
  1. class Nauka{
  2. //metoda __construct jest automatycznie wywoływana podczas inicjowania klasy
  3. public function __construct()
  4. {
  5. //połączenie
  6. }
  7. }

  1. class Nauka{
  2. //metoda __construct jest automatycznie wywoływana podczas inicjowania klasy
  3. public function __construct()
  4. {
  5. $this->funkcjaPołaczenie();
  6. }
  7. }

  1. class Nauka{
  2. //metoda __construct jest automatycznie wywoływana podczas inicjowania klasy
  3. public function __construct()
  4. {
  5. // pobieranie obiektu innej klasy odpowiedzialnej za bazę danych.
  6. }
  7. }


Kontrolery są po to byś mógł w prosty sposób pobierając np. dane z POST mógł zrealizować zadanie w kilku liniach kodu.
Poczytaj o MVC w PHP, powinno Ci to zrobić trochę jaśniejszy pogląd o co mi chodzi.

Ten post edytował Lwik 14.11.2013, 20:41:24
Go to the top of the page
+Quote Post

Posty w temacie


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: 8.10.2025 - 01:34