A kódom nem jeleníti meg azt a részt, mikor már beléptem
Sziasztok! Szeretném a segítségeteket kérni. Az a baj, hogy nem jeleníti meg se azt a részt, mikor már beléptem, se pedig a login részt.
Segítségeteket előre is köszönöm!
Login:Logout:
■ Segítségeteket előre is köszönöm!
Login:
<?php
function confirmUser($username, $password){
global $kapcsolat;
/* Add slashes if necessary (for query) */
if(!get_magic_quotes_gpc()) {
$username = addslashes($username);
}
/* Verify that user is in database */
$q = "select jelszo from users where nick = '$username'";
$result = mysql_query($q,$kapcsolat);
if(!$result || (mysql_numrows($result) < 1)){
return 1; //felhasználói név hiba
}
$dbarray = mysql_fetch_array($result);
$dbarray['jelszo'] = stripslashes($dbarray['jelszo']);
$password = stripslashes($password);
/* Jelszó ellenőrzés */
if($password == $dbarray['jelszo']){
return 0; //sikeres
}
else{
return 2; //jelszó hiba
}
}
function checkLogin(){
if(isset($_COOKIE['cookname']) && isset($_COOKIE['cookpass'])){
$_SESSION['username'] = $_COOKIE['cookname'];
$_SESSION['password'] = $_COOKIE['cookpass'];
}
if(isset($_SESSION['username']) && isset($_SESSION['password'])){
if(confirmUser($_SESSION['username'], $_SESSION['password']) != 0){
unset($_SESSION['username']);
unset($_SESSION['password']);
return false;
}
return true;
}
else{
return false;
}
}
function displayLogin(){
global $logged_in;
if($logged_in){
?>
<div class="menu">
<h3><? echo $_SESSION[username]?></h3>
<div class="right_box">
<center>
<a href="reg/adatok.php" target="iframe">Saját adatok</a><br>
<a href="reg/logout.php">Kilépés</a><br>
</center>
</div><center><img src="kepek/sottoblocco.gif"></center>
</div>
<?
}
else{
?>
<div class="menu">
<h3>Belépés</h3>
<div class="right_box">
<form action="" method="post">
<table align="left" border="0" cellspacing="0" cellpadding="3">
<tr><td>Felhasználói név:</td><td><input type="text" name="nick" maxlength="30"></td></tr>
<tr><td>Jelszó:</td><td><input type="password" name="jelszo" maxlength="30"></td></tr>
<tr><td colspan="2" align="left"><input type="checkbox" name="remember"><font size="2">Felhastnálói név megjegyzése:</td></tr>
<tr><td colspan="2" align="left"><a href="register.php" target="iframe">Regisztráció</a></td></tr>
<tr><td colspan="2" align="left"><a href="elfelejtett_jelszo" target="iframe">Elfelejtett jelszó</a></td></tr>
<tr><td colspan="2" align="right"><input type="submit" name="sublogin" value="Belépés"></td></tr>
</table>
</form>
</div>
<center><img src="kepek/sottoblocco.gif"></center>
</div>
<?
}
}
if(isset($_POST['sublogin'])){
if(!$_POST['nick'] || !$_POST['jelszo']){
die('Nincsenek kitöltve a szükséges mezők');
}
$_POST['nick'] = trim($_POST['nick']);
if(strlen($_POST['nick']) > 30){
die("Túl hosszú felhasználói név");
}
$md5pass = md5($_POST['jelszo']);
$result = confirmUser($_POST['nick'], $md5pass);
if($result == 1){
die('Ismeretlen felhasználó');
}
else if($result == 2){
die('Hibás jelszó');
}
$_POST['nick'] = stripslashes($_POST['jelszo']);
$_SESSION['username'] = $_POST['nick'];
$_SESSION['password'] = $md5pass;
if(isset($_POST['remember'])){
setcookie("cookname", $_SESSION['username'], time()+60*60*24*100, "/");
setcookie("cookpass", $_SESSION['password'], time()+60*60*24*100, "/");
}
echo "<meta http-equiv=\"Refresh\" content=\"0;url=$HTTP_SERVER_VARS[PHP_SELF]\">";
return;
}
$logged_in = checkLogin();
?>
<?php
session_start();
$_SESSION['belepett'] = false;
$_SESSION['nick'] = false;
header("location: ../index.php");
?>
magic quotes
- A magic quotes helyett inkább a mysql_real_escape_string függvényt használd.
- Nem értem a kérdést. Mit jelent az, hogy "nem jelenik meg"? Honnan hívod ezeket?
- Használd a "code" bbcode jelölőt, de még inkább a "colorer"-t, mert ez így nagyon olvashatatlan.
Nem jelenik meg
hol hívod meg?
Amúgy egész szépen és érthetően használod a függvények elnevezéseit, ez ritkaság szokott lenni ilyesmi horderejű kérdéseknél, ezért arra egy pirospont ;)
Köszi!!!