Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Czy to dobre zapytanie
--armind--
post 15.02.2014, 11:35:55
Post #1





Goście







Witam, chciał bym się zapytać czy to dobre zapytanie ejst, i czy cały ten skrypt jest dobrze skonstruowany. Uzywam codeigniter. tak więc to moje początki.
Potrzebuje z tego zapytania wyciągnąć dane z tabel: users i role, tak wiec dlatego używam JOIN

  1. public function login($login, $pass)
  2. {
  3. $query = $this->db->query("SELECT * FROM users LEFT JOIN role ON role.user_id = users.id WHERE login='$login' AND pass='$pass'");
  4. foreach ($query->result() as $row)
  5. {
  6. return $data = array('id' => $row->id, 'name' => $row->name, 'admin' => $row->admin);
  7. }
  8. }



Wczesniej doradzono mi zebym uzył tego kawałka kodu:

  1. return $this->db->select('*')->from('users')->join('role', 'user_id=users.id')->where(array('login' => $login, 'pass' => $pass))->get()->row_array();


No ale niestety, tylko jeden user może się zalogować.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
Turson
post 15.02.2014, 11:54:39
Post #2





Grupa: Zarejestrowani
Postów: 4 291
Pomógł: 829
Dołączył: 14.02.2009
Skąd: łódź

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


  1. public function login($login, $pass)
  2. {
  3. $query = $this->db->query("SELECT * FROM users LEFT JOIN role ON role.user_id = users.id WHERE login='$login' AND pass='$pass'");
  4. foreach ($query->result() as $row)
  5. {
  6. return $data = array('id' => $row->id, 'name' => $row->name, 'admin' => $row->admin);
  7. }
  8. }

Przecież tylko jeden użytkownik może mieć login i hasło pasujące do wzorca w warunku, więc foreach jest niepotrzebny.

Cytat
Wczesniej doradzono mi zebym uzył tego kawałka kodu:

Myślę, że dobrze doradzono, bo to frameworkowy sposób zapytania.

Cytat
No ale niestety, tylko jeden user może się zalogować.

Jak jeden questionmark.gif
Go to the top of the page
+Quote Post
--armind--
post 15.02.2014, 12:04:10
Post #3





Goście







Jeden uzytkownik moze się zalogować, inni userzy się nie zalogują - "Niewłaściwe dane".

Jak by tu wytłumaczyć...chodzi mi że pierwszy user z id np 40 się zaloguje a reszta id ma problem z logowaniem bo nie idzie się zalogować
Go to the top of the page
+Quote Post
--armind--
post 16.02.2014, 12:44:09
Post #4





Goście







Odświeżam. prosze o pomoc.
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: 14.08.2025 - 12:24