Stránka 1 z 1

PHP: nakej kiks :oops:, prihlasovaci skript

Napsal: ned 4. pro 2005, 02:00
od sheriff.wiggum
sry za tak blbej topic ale nevim jak to nazvat.

Kód: Vybrat vše


if ($_POST['submit']){
  
  $login = $_POST['login'];
  //pripojeni + vyber z databaze
  $sql_pripoj = mysql_connect($sql_server, $sql_user, $sql_password) or die("Nelze se připojit");
                mysql_select_db($sql_databaze) or die("Nelze se připojit");
                
  $sql_dotaz = "select password from users where username = '$login'";
  $dotaz = mysql_query($sql_dotaz);
  
    //porovnani hesel
    if ($dotaz && mysql_num_rows($dotaz) && md5($_POST['pass']) == mysql_result($dotaz)) {
    
    $_SESSION['$username'] = $login;
    
    exit;
    }
    
    else $chyba = true;
  
  mysql_close($sql_pripoj);

}
pripadne barevne na http://sheriff.webzdarma.cz/login.phps

nekde je tam krpa (porad to krici ze je spatne heslo), ale nevim kde je a hlavne jak ji napravit. :oops: sem v tom lamer takze vubec netusim ktera bije. chyba predpokladam bude nekde tady - ($dotaz && mysql_num_rows($dotaz) && md5($_POST['pass']) == mysql_result($dotaz)) ale to je kupodivu jedinej radek co jsem opsal z knizky :(

pokud by se na to nekdo chtel mrknout tak formular je

Kód: Vybrat vše

<div id="login">
      <h1>Administrace</h1>

      <form action="./index.phtml" method="post">
        <p><label>Uživatelské jméno:<br /><input type="text" name="login" value="" size="20" /></label></p>
        <p><label>Heslo:<br /> <input type="password" name="pass" value="" size="20" /></label></p>
          <?php
          if ($chyba){

          echo("<span style=\"color: #FF0000;\">Neplatné uživatelské jméno nebo špatné heslo</span><br />");

          }
          ?>
        <p class="submit"><input type="submit" name="submit" value="Přihlásit se" /></p>
      </form>
</div>
a db necham na vas :-D :roll:

// pokud md5($_POST['pass']) nahradim $neco a nad to dam $neco = md5($_POST['pass']); tak to stejne nevali

Napsal: ned 4. pro 2005, 12:15
od Jasper

Kód: Vybrat vše

mysql_connect($sql_server, $sql_user, $sql_password)
a nechybi ti tam nahodou naincludovat konfig soubor pro pripojneni do databaze (nebo nastavit ty hodnoty do tech promenych $sql_server, $sql_user, $sql_password ....)

a jeste:

Kód: Vybrat vše

($dotaz && mysql_num_rows($dotaz) && md5($_POST['pass']) == mysql_result($dotaz))
tady by melo byt vice zavorek ne? Nebo to bude treba brat

Kód: Vybrat vše

mysql_num_rows($dotaz) && md5($_POST['pass'])
jako vyraz a to je blbost ne?
Podle me by to melo byt:

Kód: Vybrat vše

(($dotaz && mysql_num_rows($dotaz)) && (md5($_POST['pass']) == mysql_result($dotaz)))

Napsal: pon 5. pro 2005, 02:14
od Lamicz

Kód: Vybrat vše

    $res = mysql_query( "SELECT `Login`, `Func`, `Password` FROM `$table_users` WHERE (`Login`='$login') AND (`Password`='$password') AND ((`Type`='$type') OR (`Type`='A'))" );
      while($user = mysql_fetch_array($res)){
  
        $_SESSION['login'] = $login;  
...
nevim, toto pouzivam ja a prijde me to prehlednejsi ;)

Napsal: pon 5. pro 2005, 17:31
od sheriff.wiggum
Jasper píše:(($dotaz && mysql_num_rows($dotaz)) && (md5($_POST['pass']) == mysql_result($dotaz)))
cely toto bylo blbe a vyhazovalo to kravinu. tak sem se nakonec dohrabal k poli :-D

Kód: Vybrat vše

$dotaz = @mysql_query($sql_dotaz); 
$dotaz = @mysql_fetch_array($dotaz); 
$md5_password = $_POST['pass'];
  //porovnani hesel 
  if ($md5_password == $dotaz['password'])
  { 
    $_SESSION['prihlasen'] = true; 
    $_SESSION['login'] = $login; 
  }  
tzn pokud nekdo potrebuje prihlasovaci skript, tak tady jeden mate :D sice neni nejlepsi ale na tom h*vno sejde :)