Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Při přihlášení na webu nereaguje checkbox pamatovat si mě.

Ahoj poradno,

můžete mi někdo zkontrolovat můj kod na přihlášení?
Ikdyž mám zaškrtnuté tlačítko pamatovat si mě tak mě to stejně po nějaké době odhlásí.

Formulář:

				<form class="clearfix" action="login_zpracuj.php" method="post">
					<h1>Přihlášení<br>
          Login</h1>
					<label class="grey" for="log">Nick:</label>
					<input class="field" type="text" name="jmeno" id="log" value="" size="23" />
					<label class="grey" for="pwd">Password:</label>
					<input class="field" type="password" name="heslo" id="pwd" size="23" />
	        <label><input name="rememberMe" id="rememberMe" type="checkbox" checked="checked" value="1" /> &nbsp;Pamatovat si mě?</label>    	
					<input type="submit" name="submit" value="Login" class="bt_login" />
					</form>

login_zpracuj:

<?php
ob_start();
/*
* Tetno soubor zjisti zda se takovy uzivatel s takovym heslem v databazi nachazi.
* Pokud ano, do sessions o tom ulozime informaci.
* Jinak se samozrejme presmerujeme zpet a dame uzivateli vedet, ze zadal spatne udaje
*/
session_start(); // Budeme pracovat se session, musíme je nastartovat.
if(isset($_POST['jmeno'])){
  require_once 'settings_2.php';
  $name = $_POST['jmeno'];
  $pass = md5($_POST['heslo']);
  $remember = $_POST['rememberMe'];
    $query = mysql_query("SELECT * FROM `uzivatele` WHERE `jmeno` = '$name' and `heslo` = '$pass'") or die (mysql_error());
    // Vybereme uživatele se zadaným jménem a heslem
      $Vysledek = mysql_fetch_array($query);
        if($Vysledek['jmeno']){ // pokud tato proměnná obsahuje data, bylo zadané správné jméno a heslo
          // Do sessions si uložíme pár informací o přihlášeném
          $_SESSION['prihlasen'] = 1;
          $_SESSION['login'] = $Vysledek['jmeno'];
          $_SESSION['UserId'] = $Vysledek['id'];
          $_SESSION['UserMail'] = $Vysledek['mail'];
          $_SESSION['ip'] = $Vysledek['ip'];

   if(isset($_POST['remember'])){
      setcookie("cookname", $_SESSION['login'], time()+60*60*24*100, "/");
      setcookie("cookid", $_SESSION['UserID'], time()+60*60*24*100, "/");
   }
          $ip=$_SERVER["REMOTE_ADDR"]; 
$tm=date("Y-m-d-H-i-s");
$query = mysql_query("UPDATE uzivatele SET ip = '$ip', tm = '$tm' WHERE `jmeno` = '$name' ") or die (mysql_error());
          $bl=$_SERVER['HTTP_REFERER'];
          header("location: $bl"); // přesměrujeme na index
          exit;
        }else{
        $bl="index.php";
        echo "<p class=data> <center>Špatně zadané údaje</center>";
     print "<script>";
       print " parent.location='$bl';"; // Comment this line if you don't want to redirect
          print "</script>" ;
          exit;
        }
    mysql_free_result($query);
}else{
  echo "Zde nic není.";
}
ob_end_flush();
?>

Díky že mi někdo řekne co kde dělám blbě. Kritiku přijímám :-D

Předmět Autor Datum
Tak našel jsem chybu v tomto if(isset($_POST['remember'])){ mělo by tam být if(isset($_POST['re… poslední
Gizzer 30.12.2012 20:28
Gizzer

Tak našel jsem chybu v tomto

 if(isset($_POST['remember'])){

mělo by tam být

 if(isset($_POST['rememberMe'])){

Ale nevím jestli je to právě to co to může způsobovat.

EDIT:
Tak to asi nebude tím, jakmile tu stránku na chvíli zavřu v prohlížeči tak mě to odhlásí.

Zpět do poradny Odpovědět na původní otázku Nahoru