Nejste přihlášeni
Stránky 1
Zdravím, mám problém se SESSIONS v PHP na mých stránkách http://bakerteam.tode.cz/login/, učím se s PHP a na localhostu mi vše funguje tak jak by mělo, ovšem na endoře mi nefunguje přihlašování. Nejspíš bude chyba v téhle části ověření přihlášení:
session_start();
if(!isset($_SESSION['username']))
{
header("Location: index.php");
}
Problém je taky v tom že mi PHP nehlásí žádnou chybu.
Byl bych vděčný za každou radu.
Offline
Řekl bych, že zde problém nebude, tedy pokud chcete, aby když není nastavená session "username", aby přesměroval na index.php.
Více se rozepište o problému, popř. poskytněte více kódu...
Nejnovější článek: www.zeminem.cz ...
Černé díry jsou místa, kde Bůh dělil nulou...
Endora plugin!
Offline
Zde je skript který se provede při přihlášení:
<?php
@$username = $_POST['username'];
@$userpass = $_POST['userpass'];
@$login = $_POST['login'];
$password = hash("sha256", $userpass);
$con = mysql_connect("localhost", "root", "");
if(!$con)
{
die("Chyba mysql: " . mysql_error() );
}
mysql_select_db("cmoud");
if(isset($login))
{
$sql = "SELECT * FROM users WHERE username='$username' and userpass='$password'";
$result = mysql_query($sql);
$count = mysql_num_rows($result);
if($count == 1)
{
session_register("username");
session_register("password");
header("Location: loggedin.php");
}
else
{
die("Špatné jméno nebo heslo");
}
}
?>
A zde je skript který kontroluje jestli je uživatel přihlášen:
<?php
session_start();
if(!isset($_SESSION['username']))
{
header("Location: index.php");
}
?>
Když to mám na localhostu, tak mi vše funguje, tuhle metodu přihlašování jsem již dříve zkoušel u jiných stránek, a měl jsem ten samý problém, tak jsem to nahrál na webzdarma.cz kde vše fungovalo. Problém je v tom že webzdarma je podle mého názoru o ničem a chci používat endoru pro zveřejňování mých pokusů s PHP. Pokud by bylo třeba, tak bych vám klidně poskytl všechny soubory týkající se tohoto webu. Předem díky za odpověď .
Offline
Problém vyřešen . Pro ostatní co by měli stejný problém. Chybu jsem měl v registraci session. Používal jsem session_register('neco'); namísto $_SESSION['neco']=$neco;
Offline
Stránky 1