Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] problem z logowaniem
Forum PHP.pl > Forum > PHP
Rafal_new_PHP
Problem z logowaniem. Mam skrypt i łączy sie z bazą i mam napisane zalogowanie niemozliwe. Moze ktos z was zna przyczyne. Baze dobrze skonfigurowałem nazywa sie serwis. A create table values konto i jest login i hasło w bazie. To skrypt:

Kod


<?php
session_start();
if(isset($_POST['login']) && isset($_POST['haslo']) && isset($_POST['mail']))
{
$login = $_POST['login'];
$haslo = $_POST['haslo'];
$mail = $_mail['mail'];
}

$db = new mysqli('localhost', 'root', '', 'serwis');
if (mysqli_connect_errno())
{
echo ' Blad polaczenie z baza danych';
exit;
}

$zapytanie = "SELECT * FROM konto WHERE login='$login' AND haslo='$haslo' AND email='$mail' ";

$wynik = $db->query($zapytanie);
if($wynik->num_rows > 0)
{
$_SESSION['prawid_uzyt']= $login;
}

$db->close();

?>

<html>
<body>
<h1>Strona główna</h1>
<?php
  if(isset($_SESSION['prawid_uzyt']))
  {
    echo 'Użytkownik zalogowany jako: '.$_SESSION['prawid_uzyt'].'<br />';
    echo '<a href="wylog.php">Wylogowanie</a><br />';
  }
  else
  {
    if(isset($login))
    {
      // jeżeli próba logowania była nieudana
     @ echo 'Zalogowanie niemożliwe.<br />';
    }
    else
    {
      // nie było próby logowania lub nastąpiło wylogowanie
      echo 'Użytkownik niezalogowany.<br />';
    }

  }
?>
<br>
<a href="tylko_czlonkowie.php">Część członkowska</a>
</body>
</html>


tutaj baza danych
Kod
create table konto
(
  login char(100) ,
  haslo char(100) ,
  mail char(100)  ,
  imie char(100) ,
  pseldo char(100)
);
qbs
po pierwsze:

Kod
$mail = $_mail['mail'];


Kod
."and email='$email'";


a po drugie KONIECZNIE przeczytaj o sql injection
Rafal_new_PHP
Nie pomoglo cos jeszcze musi byc zle sad.gif
melkorm
pokiksiłeś to zapytanie smile.gif

  1. $zapytanie = 'SELECT * FROM konto WHERE login= '.$login.' AND haslo = '.$haslo.' AND email = '.$mail;


edytuj pierwszt post z kodem byśmy widzieli co i jak mzieniłeś smile.gif
Rafal_new_PHP
Nadal ten sam błąd. Zmieniłem tak jak chciałeś i nic sad.gif
Grzesiek1
Cytat
if(isset($_POST['login']) && isset($_POST['haslo']) && isset($_POST['mail']))

Na pewno wysyłasz to wszystko postem ?
Bo po tym
Cytat
$login = $_POST['login'];
$haslo = $_POST['haslo'];
$mail = $_mail['mail'];

Zacząłem wątrpić
Rafal_new_PHP
Wysyłam Postem method post a to jest plik loguj u mnie.
melkorm
pokaż zrzut struktury bazy użytkowników i wiersz z użytkownikiem: 'test' ;]
Lion_87
Cytat
$zapytanie = 'SELECT * FROM konto WHERE login= '.$login.' AND haslo = '.$haslo.' AND email = '.$mail;


  1. $zapytanie = "SELECT * FROM konto WHERE login='$login' AND haslo='$haslo' AND email='$mail' ";
Rafal_new_PHP
Pokazałem baze. Znaczy dopisałem ja masz na gorze. Nadal blad ten sam wyswietlanie niemozliwe zalogowanie.
Lion_87
a
Cytat
$mail = $_mail['mail'];


nie powino byc

  1. <?php
  2. $mail = $_POST['mail'];
  3. ?>
melkorm
w bazie masz pole mail a nie Email ! zmień wtym zapytaniu! i powinno działać ;p
Rafal_new_PHP
Dziekuje wam za Pomoc. Działa! offtopic.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.