Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> klasy
Księżyc
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 5.01.2006

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


Witam
Napisałem aplikacje w php z wykorzystaniem mysqla całoścć jest napisana z wykorzystaniem funkcji,mam jednak zamienić to na klasy.Aplikacja to rejestracja pacjentów, moje pytanie brzmi jeśli tworze klase pacjent to umieszczam w niej metody zaloguj, wybierz lekarza, wybierz termin itp, a co mam zrobić z funkcjami które służą do pobierania danych z tabel, łączenia z bazą i opisującą wygląd strony? czy stworzyć nowe klasy np baza ,strona czy umieścić wszystko w klasie pacjent
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
TomASS
post
Post #2





Grupa: Zarejestrowani
Postów: 1 660
Pomógł: 13
Dołączył: 9.06.2004
Skąd: Wrocław i okolice

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


Najlepiej osobne:
klasa do obsługi bazy danych
klasa logowania


W zasadzie im więcej klas tym lepiej, oczywiście, jak ze wszystkim, nie należy przesadzać smile.gif

Ten post edytował TomASS 3.02.2006, 09:31:58


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





Grupa: Przyjaciele php.pl
Postów: 2 258
Pomógł: 16
Dołączył: 21.09.2004
Skąd: Kielce

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


Podziel to na więcej klas:
- pacjent
- baza
- strona
Logowanie też bym wrzucił w osobną klasę. Jeśli wykorzystujesz do autoryzacji bazę, to będziesz mógł wykorzystać metody z klasy baza.
Ogólnie rzecz biorąc najlepiej narysuj sobie schemat działania aplikacji i planuj smile.gif


--------------------
-------------

------
Go to the top of the page
+Quote Post
Księżyc
post
Post #4





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 5.01.2006

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


Podzieliłem na klasy i tak w klasie strona umieściłem:nagłowek, style, stopka formularz_logowania.
Mam jednak problem z przekształceniem funkcji na klasy przy pobieraniu danych z bazy poniżej jest plik rejestracja.php , moje pytanie brzmi od czego zacząć przekształcanie pliku rejestracje.php oraz funkcji wewnątrz klas aby przejść ze struktury na klasy
  1. <?
  2. //pobierane są rezerwacje wybranego pacjenta
  3.   $tablica_rezerwacji = pobierz_rezerwacje($Nazwisko);
  4. //wysietlane są rezerwacje pacjenta
  5.   wyswietl_rezerwacje($tablica_rezerwacji);
  6. ?>



Poniżej jest klasa Baza w któej są funkcje loncz(połączenie z bazą) oraz wynik_do_tablicy(przekształca rzędy w tablice asocjacyjną)
  1. <?
  2. class Baza
  3. {
  4. function polacz() // bylo: loncz() -- straszne :| -- dr_bonzo
  5. {
  6.    $wynik = mysql_pconnect("localhost","root","pokemon"); 
  7.    if (!$wynik)
  8.       return  false;
  9.    if (!mysql_select_db("przychodnia"))
  10.       return  false;
  11.    return $wynik;
  12. }
  13. function wynik_do_tablicy($wynik)
  14. {
  15.    $tablica_wyn = array();
  16.  
  17.    for ($licznik=0; $rzad = @mysql_fetch_array($wynik); $licznik++)
  18.      $tablica_wyn[$licznik] = $rzad;
  19.  
  20.    return $tablica_wyn;
  21. }
  22. }
  23. ?>


klasa Pacjent posiada funkcje pobierz_rezerwacje() która na podstwie przekazanej wartości tworzone jest zapytanie po uprzednim połączeniu z bazą.Oraz funkcja wyswietl_rezerwacje() która wyświetla rezerwacje
  1. <?
  2. class Pacjent
  3. {
  4.     
  5. function pobierz_rezerwacje($Nazwisko)
  6. {
  7. $loncz = loncz();
  8.    if (!$loncz)
  9.     return  false;
  10.    $zapytanie = "select pacjenci.Id_Pacjenta, lekarze.Nazwisko,lekarze.Imie,lekarze.Gabinet,
    specjalizacja.Specjalizacja,rejestracja.Data,rejestracja.Czas,rejestracja.Id_Reje
    stracji from lekarze,specjalizacja,rejestracja,pacjenci where lekarze.Id_Specjali
    zacja=specjalizacja.Id_Specjalizacja and lekarze.Id_Lekarza=rejestracja.Id_Lekarz
    a and 
  11. pacjenci.Id_Pacjenta=rejestracja.Id_Pacjenta and pacjenci.Nazwisko='$Nazwisko'";
  12.    $wynik = @mysql_query($zapytanie);
  13.    if (!$wynik)
  14.      return false;
  15.    $rezerwacje = @mysql_num_rows($wynik);
  16.    if ($rezerwacje==0)
  17.       return false;
  18.   $wynik = wynik_do_tablicy($wynik);
  19.    return $wynik;
  20. }
  21.  
  22. function wyswietl_rezerwacje($tablica_rezerwacji)
  23. {
  24.   ?>
  25.   <center>
  26.    <table border=1  width=50%  class=center3  >
  27.    <tr>
  28.    <th>Nazwisko</th><th>Imie</th><th>Gabinet</th><th>Specjalizacja</th><th>Data</th><th>Czas</th><th>Usun</th>
  29.    </tr>
  30.    <?
  31.   foreach ($tablica_rezerwacji as $rzad)
  32.   {
  33.     $Id_Rejestracji=$rzad['Id_Rejestracji'];
  34.     $Id_Pacjenta=$rzad['Id_Pacjenta'];
  35.     $Nazwisko=$rzad['Nazwisko'];
  36.     $Imie=$rzad['Imie'];
  37.     $Gabinet=$rzad['Gabinet'];
  38.     $Specjalizacja=$rzad['Specjalizacja'];
  39.     $Data =$rzad['Data'];
  40.     $Czas=$rzad['Czas'];
  41.   echo"<tr><td>$Nazwisko</td><td>$Imie</td><td>$Gabinet</td><td>$Specjalizacja</td><td>$Data</td><td>$Czas</td><td><a href=\"usun_rezerwacje.php?Id_Rejestracji=$Id_Rejestracji\">usun</a></tr>";
  42.   }    
  43.   ?>
  44.   </table>
  45. </center>
  46. <table border=1 class=down_left width=20% >
  47.    <tr><th><a href="czlonek.php">Powrót do menu</a></th></tr>
  48.    </table>
  49. <table border=1 class=down_right width=20%  a >
  50.    <tr><th><a href="wylog.php">Wyloguj</a></th></tr>
  51.    </table>
  52.   <?
  53. }
  54. }
  55. ?>

---[ edit ]-------
Poprawilem blad ortograficzny w kodzie.
-- dr_bonzo
Go to the top of the page
+Quote Post
Ociu
post
Post #5





Grupa: Moderatorzy
Postów: 1 566
Pomógł: 37
Dołączył: 14.05.2003
Skąd: Kraków




Lepiej poczytaj o OOP. Jest taki fajny artykuł na wortalu php.pl....
Go to the top of the page
+Quote Post
Księżyc
post
Post #6





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 5.01.2006

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


troche poczytałem o objektowym php , ale mam pytanie czy wyświetlanie rezultatu zapytania umieścić w klasie czy poza klasąquestionmark.gif
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 - 13:17