• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

porównanie danych w dwóch tabelach za pomocą php

VPS Starter Arubacloud
0 głosów
325 wizyt
pytanie zadane 5 września 2018 w PHP przez tomek0094 Nowicjusz (120 p.)
edycja 5 września 2018 przez Patrycjerz

Witam.
Potrzebuję w kwestii logowania na stronie oto kod:

<?php
    session_start();
    
    require_once "connect.php";
 
    $polaczenie = @new mysqli($host, $db_user, $db_password, $db_name);
     
    if ($polaczenie->connect_errno!=0)
    {
        echo "Error: ".$polaczenie->connect_errno;
    }
    else
    {
        $login = $_POST['Login'];
        $haslo = $_POST['Haslo'];

        $login = htmlentities($login, ENT_QUOTES, "UTF-8");
        $haslo = htmlentities($haslo, ENT_QUOTES, "UTF-8");
 
        if ($rezultat = @$polaczenie->query(
        sprintf("    
         SELECT t1.Login, t1.Haslo, t2.Login, t2.Haslo FROM Klienci t1, Firmy t2 WHERE t1.Login='%s' AND t1.Haslo='%s' OR t2.Login='%s' AND t2.Haslo='%s'",
        mysqli_real_escape_string($polaczenie,$login),
        mysqli_real_escape_string($polaczenie,$haslo),
        mysqli_real_escape_string($polaczenie,$login),
        mysqli_real_escape_string($polaczenie,$haslo))))
        {
            $ilu_userow = $rezultat->num_rows;
            if($ilu_userow==1)
            {
                $_SESSION['zalogowany'] = true;
                 
                $wiersz = $rezultat->fetch_assoc();
                $_SESSION['Login'] = $wiersz['Login'];

                 
                unset($_SESSION['blad']);
                $rezultat->free_result();
                header('Location: Index.php');
                 
            }
            else {
                 

                 
            }
             
        }
         
        $polaczenie->close();
    }
     
?>

A mój problem polega na tym że w bazie mam dwie tabele jedna to Klienci a druga to Firmy i przy logowaniu chciałbym sprawdzać czy dany użytkownik istniej w jednej lub drugiej tabeli po czym loguje sie na konto firmy lub klienta

komentarz 5 września 2018 przez rafal.budzis Szeryf (85,340 p.)
Wydaje mi się ze nie potrzebnie sobie utrudniłeś prace. Ja na twoim miejscu stworzyłbym jedną tabele users która będzie miała kolumny (id, login, password, type) Gdzie jako type wpisywałbym person lub firm. Następnie wszystkie dodatkowe dane przechowywał w osobnych tabelach

meta_person(id, user_id, mail, phone)

meta_firm(id, user_id, mail, phone, nip, regon)
komentarz 5 września 2018 przez tomek0094 Nowicjusz (120 p.)
A jeśli chciałbym zostać przy takiej wersji bo w dalszej części może być mi łatwiej to co powinienem zmienić w kodzie żeby nie było problemu ze sprawdzeniem danych logowania i hasła w tych dwóch tabelach

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
2 odpowiedzi 323 wizyt
0 głosów
1 odpowiedź 465 wizyt
pytanie zadane 5 września 2018 w SQL, bazy danych przez Mark Bogart Początkujący (400 p.)
0 głosów
1 odpowiedź 385 wizyt
pytanie zadane 1 kwietnia 2021 w PHP przez niezalogowany

92,980 zapytań

141,943 odpowiedzi

321,189 komentarzy

62,309 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...