Jump to content
  • 0

pomoc Nevysvětlitelný problém s přihlašováním


jAk3r

Dotaz

Zdravím již si opravdu nevím rady a nejsem v php žádný machr ale mám tu problém který si neumím objasnit....v mém redakčním systému jsem začal využívat db layer dini ale po přepsání na dini natsal problém že kdykoliv se chci přihlásit na můj účet napíše mi to že jsem zadal špatné údaje ale přitom ty údaje jsem zadal správně... tudíž musí být chyby někde ok

 

 

 

$user = dibi::fetch("SELECT * FROM accounts WHERE nick='".$nick."' LIMIT 1");
if(mysql_num_rows($dotaz) == 1)
{
if($ban==0){
//session_regenerate_id();
$_SESSION['id'] = $user['id'];
$_SESSION['nick'] = $user['nick'];
session_write_close();
$lastlogin = date(' d.m.Y ')."/".date(' H:i:s ');
$lastloginSQL = dibi::query("UPDATE `accounts` SET `last-login`='".$lastlogin."' WHERE nick='".$nick."'");
$_SESSION['lastl'] = $lastlogin;
$avatar = $user['avatar'];
$admin = $user['admin'];
$vip = $user['vip'];
$ban = $user['ban'];




echo "
<div id='lg_avatar'><img src='".$avatar."' width='45px' height='45px' border='1' /></div>
                    <div id='lg_name'><font color='white'>Přihlášen: </font><a href='profil.php?name=".$user['nick']."'> ".$user['nick']."</a> ";
if($vip==1){
echo "<img src='./images/post/star.png' style='margin: 2px 1px;'>";
}
echo" </div>
<div id='lg_nast'>
<a href='".$GLOBALS['web_url']."/test/nastaveni.php'>Nastavení</a> |</div>";

if($admin==1){
echo "<div id='lg_admin'><a href='".$GLOBALS['web_url']."/test/admin/main.php'>Administrace</a></div>";
}
echo "
<div id='lg_odh'><a href='".$GLOBALS['web_url']."/test/logout.php'><img src='./images/post/odhlasit.png'></a></div>
";
}if($ban==1){

echo "<h1><FONT color='#FF0000'><b>Účet nebyl aktivován!</b></FONT></h1>";
header("location: logout.php");

}if($ban==2){

echo "<h1><FONT color='#FF0000'><b>Tento účet je zablokován!</b></FONT></h1>";
header("location: logout.php");

}

}else{
echo "Zadal jsi špatné heslo..";
} 

 

 

 

netuším v čem je problém.... a plus také bych potřeboval zda by mi někdo poradil jak zabezpečit ten login aby mi nemohli sebrat session  zde přidávám kompletní kód smile.png

 

 

 

<?php
/*
=====================================================
WGRS - Copyright (C) 2014 JSoft
Autor - Jenkings
Optimalizace a Úprava - jAkErCZ
-----------------------------------------------------
http://war-game.eu
=====================================================
File: login.php
=====================================================
*/
if($_SESSION['id'] == false )
{

if(isset($_POST["login"]))
{
$nick = mysql_real_escape_string($_POST["nick"]);
$pass = md5(md5($_POST['pass']));

/*---- SQL Dotazy --------------------------------------------------------*/
$dotaz = dibi::query("SELECT * FROM accounts WHERE nick= %s AND heslo= %s", $nick, $pass);
if($dotaz->fetchSingle())
{
$user = dibi::fetch("SELECT * FROM accounts WHERE nick='".$nick."' LIMIT 1");
if(mysql_num_rows($dotaz) == 1)
{
if($ban==0){
//session_regenerate_id();
$_SESSION['id'] = $user['id'];
$_SESSION['nick'] = $user['nick'];
session_write_close();
$lastlogin = date(' d.m.Y ')."/".date(' H:i:s ');
$lastloginSQL = dibi::query("UPDATE `accounts` SET `last-login`='".$lastlogin."' WHERE nick='".$nick."'");
$_SESSION['lastl'] = $lastlogin;
$avatar = $user['avatar'];
$admin = $user['admin'];
$vip = $user['vip'];
$ban = $user['ban'];




echo "
<div id='lg_avatar'><img src='".$avatar."' width='45px' height='45px' border='1' /></div>
                    <div id='lg_name'><font color='white'>Přihlášen: </font><a href='profil.php?name=".$user['nick']."'> ".$user['nick']."</a> ";
if($vip==1){
echo "<img src='./images/post/star.png' style='margin: 2px 1px;'>";
}
echo" </div>
<div id='lg_nast'>
<a href='".$GLOBALS['web_url']."/test/nastaveni.php'>Nastavení</a> |</div>";

if($admin==1){
echo "<div id='lg_admin'><a href='".$GLOBALS['web_url']."/test/admin/main.php'>Administrace</a></div>";
}
echo "
<div id='lg_odh'><a href='".$GLOBALS['web_url']."/test/logout.php'><img src='./images/post/odhlasit.png'></a></div>
";
}if($ban==1){

echo "<h1><FONT color='#FF0000'><b>Účet nebyl aktivován!</b></FONT></h1>";
header("location: logout.php");

}if($ban==2){

echo "<h1><FONT color='#FF0000'><b>Tento účet je zablokován!</b></FONT></h1>";
header("location: logout.php");

}

}else{
echo "Zadal jsi špatné heslo..";
}

}else{
echo "Pod tímto jménem není nikdo veden v databázi..\n";
}

}else{
/*---------- HTML ------------------------------------------------------- */
echo "
<a href='#' alt='Registrace'><img src='./images/register.png' id='registrace'></a>
<a href='#' alt='Zapomenuté heslo'><img src='./images/heslo.png' id='heslo'></a>

<form method='POST'>

<input type='text' value='' name='nick' required />
<input type='password' value='' name='pass' required />
<input type='submit' name='login' value='' required>

</form>

";
/*---------- Konec HTML --------------------------------------------------*/

}
/*--------------------- Konec SESION ID Login (Přihlášen) ------------------*/
}else{
$dotaz = dibi::query("SELECT * FROM accounts WHERE nick='".$nick."' LIMIT 1");
if($dotaz)
{
if(mysql_num_rows($dotaz) == 1)
{
//session_regenerate_id();
$avatar = $dotaz['avatar'];
$admin = $dotaz['admin'];
$vip = $dotaz['vip'];
$_SESSION['id'] = $user['id'];
$_SESSION['nick'] = $user['nick'];
session_write_close();
}
}
echo "
<div id='lg_avatar'><img src='".$avatar."' width='45px' height='45px' border='1' /></div>
<div id='lg_name'><font color='white'>Přihlášen: </font><a href='profil.php?name=".$user['nick']."'> ".$user['nick']."</a> ";
if($vip==1){
echo "<img src='./images/post/star.png' style='margin: 2px 1px;'>";
}
echo" </div>
<div id='lg_nast'>
<a href='".$GLOBALS['web_url']."/test/nastaveni.php'>Nastavení</a> |</div>";

if($admin==1){
echo "<div id='lg_admin'><a href='".$GLOBALS['web_url']."/test/admin/main.php'>Administrace</a></div>";
}
echo "
<div id='lg_odh'><a href='".$GLOBALS['web_url']."/test/logout.php'><img src='./images/post/odhlasit.png'></a></div>
";
}
?>

 

 

 

Předem všem děkuji i za snahu jsem už bezradný :/

Link to comment
Share on other sites

1 odpověd na tuto otázku

Recommended Posts

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...