Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> dwie funckje i maly problem, poczatki w obiektowym php
lukasz.sekula
post 26.10.2008, 21:21:22
Post #1





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 8.03.2007
Skąd: Nysa

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


Witam,

mam taką klasę:

  1. <?php
  2. require_once('mysql.php');
  3.  
  4. class Miejscowosc{
  5.    public $gminy;
  6.    public $miejscowosci;
  7.  
  8.    public function PobierzGminy(){
  9.        $mysql=new mysql;
  10.        $mysql->connect('localhost','lsekula_mo','root','');
  11.        $mysql->query('SELECT * FROM miejscowosc WHERE gmina=0');
  12.        
  13.        $gminy=array();
  14.        while($rekord=$mysql->fetchRow()){
  15.            $gminy[]=$rekord;
  16.        }
  17.        $mysql->disconnect();
  18.    return $gminy;
  19.    }
  20.    
  21.    public function PobierzMiejscowosciGmin($gmina){
  22.        $mysql=new mysql;
  23.        $mysql->connect('localhost','lsekula_mo','root','');
  24.        $mysql->query('SELECT * FROM miejscowosc WHERE gmina='.$gmina.'');
  25.        
  26.        $miejscowosci=array();
  27.        while($rekord=$mysql->fetchRow()){
  28.            $miejscowosci[]=$rekord;
  29.        }
  30.    
  31.        $mysql->disconnect();
  32.    return $miejscowosci;
  33.    }
  34. }
  35. ?>


Funkcja PobierzGminy() działa. Pytanie teraz jak mam zrobić aby analogicznie pobierało miejscowości danej gminy i zawracało odpowiednia tablice je zaraz pod nazwa gminy.

dla ułatwienia pokazuje jak to ma wyglądać w smarty:

  1. <div id="catalog_m">
  2. {foreach item=gmina from=$gminy}
  3. <p>{$gmina.nazwa}<br>
  4. {foreach item=miejscowosc from=$miejscowosci}
  5. {$miejscowosc.nazwa}
  6. {/foreach}
  7. </p>
  8. {/foreach}
  9. </div>
Go to the top of the page
+Quote Post
bigZbig
post 26.10.2008, 21:36:50
Post #2





Grupa: Zarejestrowani
Postów: 740
Pomógł: 15
Dołączył: 23.08.2004
Skąd: Poznań

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


hej nie wiem jak ci może działać "pobierzGminy" kiedy w zapytaniu sql jest tabela "miejscowosc". Poza tym dlaczego w każdej metodzie otwierasz nowe polaczenie do mysql-a?


--------------------
bigZbig (Zbigniew Heintze) | blog.heintze.pl
Go to the top of the page
+Quote Post
lukasz.sekula
post 26.10.2008, 23:10:31
Post #3





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 8.03.2007
Skąd: Nysa

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


mysql jest osobna klasą odpowiedzialna za polaczenie z baza oraz pytania - popatrz początek

dla uzupelnienia - chce wiedziec czy napisac jedna funkcję wypisującą gminy a drugą wypisujaca miejscowosci (np. 3 losowe) dla danej gminy, ale jak wtedy przekazać id konkretnej gminy

struktura tabeli miejscowosc:

id,nazwa,opis,gmina

gdzie gmina jest numerem id miejscowosci ktora jest gminą, 0 oznacza że dana miejscowosć jest siedzibą gminy

Ten post edytował lukasz.sekula 26.10.2008, 23:13:59
Go to the top of the page
+Quote Post
deirathe
post 27.10.2008, 10:29:57
Post #4





Grupa: Zarejestrowani
Postów: 426
Pomógł: 32
Dołączył: 24.05.2007

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


Kolega wyzej dobrze napisal w kazdej metodzie od nowa laczysz sie z baza- bez sensu, przeanalizuj sam dokladnie a tak poza tym to jak pobierasz gminy to odrazu w tym samym zapytaniu pobierz do gminy jej miejscowosci przez JOIN


--------------------
Kawałek mojego blogu
Everything should be as simple as possible but not simpler.
A Einstein
Go to the top of the page
+Quote Post
lukasz.sekula
post 27.10.2008, 14:20:59
Post #5





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 8.03.2007
Skąd: Nysa

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


racja niepotrzebnie powtarzam connect smile.gif dzieki za pomoc już wiem o co chodzi
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 Wersja Lo-Fi Aktualny czas: 28.04.2024 - 09:06