Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL]Skrypt banowania użytkownika.
Forum PHP.pl > Forum > Przedszkole
kurczak610
Witam, nie wiem jak coś takiego zrobić, mam w bazie danych użytkownika i jest tam pole ban.
Jeżeli w polu ban dam komuś 1, gdy będzie się logował bedzie pisało że twoje konto jest zbanowane. I nie bedzie można wejsc w żadną podstrone.
Proszę o pomoc jak coś takiego napisać.

Pozdro, Kurczak610
maniekl2
Po prostu przy logowaniu pobierz z bazy pole ban dla danego usera, i jeżeli jest równe 1 to wyskakuje twoje konto jest zbanowane, a jak nie to loguje.
kurczak610
Kod
<?php include 'header.php'; ?>
<?php
if($_SESSION['logged']==0)
{
    if(isset($_POST['submitsignin']))
    {
    $_POST[passwordmd5] = md5($_POST[password]);
    $query_signin=mysql_query("SELECT id,username,klamm,admin,register_date,register_time,ban FROM users WHERE username='$_POST[username]' AND password='$_POST[passwordmd5]'") or die(mysql_error());
    $row_signin=mysql_fetch_array($query_signin);

        if($row_signin['ban'] = 1)
        {
        echo '<p class="error">Twoje konto jest zbanowane</p>';
        }
    if(mysql_num_rows($query_signin)>0)
    {
    $_SESSION['logged'] = 1;
    $_SESSION['userid'] = "$row_signin[id]";
    $_SESSION['username'] = "$row_signin[username]";
        $_SESSION['klamm'] = "$row_signin[klamm]";
    $_SESSION['admin'] = "$row_signin[admin]";
    echo '<p class="ok">Zalogowałe¶ się!</p><META HTTP-EQUIV=Refresh CONTENT="0; URL=index.php">';
    }
    else
    {
    echo '<p class="error">Zły login lub hasło!</p>';
    }
        }

?>
<form method="POST">
<table border="0">
<tr><td style="width: 125px";>Login:</td><td style="width: 150px";><input type="text" name="username" maxlength="255"></td></tr>
<tr><td>Hasło:</td><td><input type="password" name="password" maxlength="255"></td></tr>
<tr><td></td><td><input type="submit" name="submitsignin" value="Zaloguj się!"></td></tr>
</table>
</form>
<?php } ?>
<?php include 'footer.php'; ?>


Zrobiłem tak, wyskakuje blad, ale się loguje. Co tu zmienić ?
Wicepsik
  1. <?php
  2. if($_SESSION['logged']==0)
  3. {
  4.    if(isset($_POST['submitsignin']))
  5.    {
  6.    $_POST[passwordmd5] = md5($_POST[password]);
  7.    $query_signin=mysql_query("SELECT id,username,klamm,admin,register_date,register_time,ban FROM users WHERE username='$_POST[username]' AND password='$_POST[passwordmd5]'") or die(mysql_error());
  8.    $row_signin=mysql_fetch_array($query_signin);
  9.  
  10.        if($row_signin['ban'] = 1)
  11.        {
  12.        echo '<p class="error">Twoje konto jest zbanowane</p>';
  13.        }else{
  14.    if(mysql_num_rows($query_signin)>0)
  15.    {
  16.    $_SESSION['logged'] = 1;
  17.    $_SESSION['userid'] = "$row_signin[id]";
  18.    $_SESSION['username'] = "$row_signin[username]";
  19.        $_SESSION['klamm'] = "$row_signin[klamm]";
  20.    $_SESSION['admin'] = "$row_signin[admin]";
  21.    echo '<p class="ok">Zalogowałeś się!</p><META HTTP-EQUIV=Refresh CONTENT="0; URL=index.php">';
  22.    }
  23.    else
  24.    {
  25.    echo '<p class="error">Zły login lub hasło!</p>';
  26.    }
  27.  
  28. }
  29.        }
  30.  
  31. ?>
  32. <form method="POST">
  33. <table border="0">
  34. <tr><td style="width: 125px";>Login:</td><td style="width: 150px";><input type="text" name="username" maxlength="255"></td></tr>
  35. <tr><td>Hasło:</td><td><input type="password" name="password" maxlength="255"></td></tr>
  36. <tr><td></td><td><input type="submit" name="submitsignin" value="Zaloguj się!"></td></tr>
  37. </table>
  38. </form>
  39. <?php } ?>
  40. <?php include 'footer.php'; ?>


Chyba tak powinno działać.
kurczak610
Jest coś zle bo jak mam w ban 0 to pisze ze jestem zbanowany.

Naprawiłem, zamiast ban = 1 dalem ban != 0 .
Jest ok winksmiley.jpg
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.