Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z SELECTEM + logowanie php
Szajba
post
Post #1





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 10.03.2006

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


Witam próbuje zrobić logowanie do bazy, w którym z 3 tabel będzie pobierany login oraz hasło, kod wygląda tak:

  1. <?
  2. function autoryzacja() {
  3. include "polaczenie.php";
  4. $login=$_POST['login'];
  5. $haslo=md5($_POST['haslo']);
  6.  
  7. $zapytanie = "exec login";
  8.  
  9. $wynik = mssql_query( $zapytanie, $polaczenie );
  10. $totalrows_wynik = mssql_num_rows($wynik);
  11. if ($totalrows_wynik == 1) {  $_SESSION['zalogowany']=$login;
  12. $_SESSION['au']=1;}
  13. else
  14.  
  15.  print ("<font><b><p> Zła nazwa użytkownika lub hasło</p></b></font>");
  16. }
  17.  
  18.  
  19. ?>


a zapytanie SQL:

  1. CREATE PROCEDURE login AS SELECT login, haslo
  2. FROM Pacjent
  3. UNION
  4. SELECT login, haslo
  5. FROM Lekarze
  6. UNION
  7. SELECT login, haslo
  8. FROM Administrator
  9. WHERE login = '$login' AND haslo = '$haslo'
  10. RETURN
  11. GO


Problem wydaje sie w polaczniu tabel, gdy robie ten SELECT na 1 tabeli, wszystko smiga az miło.
Ale jak łącze tabele to po wpisaniu loginu wywala mi ciągle : Zła nazwa uzytkownika lub haslo" questionmark.gif?

Prosze o pomoc, każda sugestia będzie mile widziana.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
Zbłąkany
post
Post #2


Administrator serwera


Grupa: Developerzy
Postów: 521
Pomógł: 13
Dołączył: 2.04.2004
Skąd: 52°24' N 16°56' E

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


A nie prościej by było zrobić tak:
users:
id,login,password,oid
options:
id,name
Łatwiej jest szukać w jednej tabeli jak w 3 gdzie masz takie same nazwy, a jeśli już koniecznie musisz zrobić to na 3 tabelach to użyj aliasów na login i haslo dla każdej tabeli, a na końcu daj warunki złożone: login i haslo dla tylko jednej tabeli a nie wszystkich naraz, chyba, że jeden użytkownik może być jednocześnie adminem, lekarzem i pacjentem winksmiley.jpg


--------------------
Środowisko: Gentoo 2008.0 | Apache | PHP5 | PostgreSQL | MySQL | Postfix
Workstation: Gentoo 2008.0 | Firefox
Thomas Alva Edison: "Aby coś wynaleźć wystarczy odrobina wyobraźni i sterta złomu ..."
Odpowiedź na każde pytanie typu "Jak ...": "Nie da się, to nie PostgreSQL"
Go to the top of the page
+Quote Post
Method
post
Post #3





Grupa: Zarejestrowani
Postów: 177
Pomógł: 6
Dołączył: 14.01.2003
Skąd: Warszawa

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


tak btw to ja bym uzyl viewsa i na bank rozwiazaloby ten problem


--------------------
"zycia nie mierzy sie liczba oddechow,
ale liczba chwil, ktore zapieraja dech w piersi"
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 - 11:35