• 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

0 głosów
397 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,900 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 409 wizyt
0 głosów
1 odpowiedź 659 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ź 656 wizyt
pytanie zadane 1 kwietnia 2021 w PHP przez niezalogowany

93,632 zapytań

142,556 odpowiedzi

323,056 komentarzy

63,139 pasjonatów

Advent of Code 2025

Top 15 użytkowników

  1. 2900p. - dia-Chann
  2. 2870p. - DziarnowskiJ
  3. 2827p. - Łukasz Piwowar
  4. 2783p. - raydeal
  5. 2758p. - Adrian Wieprzkowicz
  6. 2713p. - rucin93
  7. 2579p. - Łukasz Eckert
  8. 2523p. - Maurycy W
  9. 2459p. - CC PL
  10. 2082p. - Michal Drewniak
  11. 1885p. - robwarsz
  12. 1851p. - Mariusz Fornal
  13. 1811p. - rafalszastok
  14. 1600p. - Rafał Trójniak
  15. 1588p. - Tomasz Bielak
Szczegóły i pełne wyniki

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

Kursy INF.02 i INF.03
...