header(Location xxx.php) elvan már küldve
Üdv!
Nos akad egy kis problémám atw-n lassan megcsináltam egy fórum szerűséget, és mihely rámegyek a belépés-re és belépne kiirja h már elvan külve a fejléc és h nemtudja módosítani, sok időmet fektettem az oldalba, most akkor dbhatom ki?
H tudnám ezt megoldani?
itt a login.php:Reméle tudtok nekem segíteni, előre is köszönöm.
Egy elsznát de szomorú weboldal szerkesztő.
■ Nos akad egy kis problémám atw-n lassan megcsináltam egy fórum szerűséget, és mihely rámegyek a belépés-re és belépne kiirja h már elvan külve a fejléc és h nemtudja módosítani, sok időmet fektettem az oldalba, most akkor dbhatom ki?
H tudnám ezt megoldani?
itt a login.php:
<?php
session_start();
include("config.inc");
$style_config_kiolvas = mysql_query("SELECT * FROM config WHERE config_name='style config'");
$style_config_kiolvas_kiir = mysql_fetch_assoc($style_config_kiolvas);
extract($style_config_kiolvas_kiir);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html" charset="iso-8859-2" />
<title>Final Destination | Belépés</title>
<link href="styles/<?php print $config_value; ?>/index.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div class="menu">
<img src="images/logo/logo.jpg" width="100%" alt="Logó" title="Logó" />
<ul>
<li><a href="index.php"><img src="images/nav/home.gif" border="0" alt="Kezdőlap" title="Kezdőlap" />Kezdőlap</a></li>
<li><a href="gallery.php"><img src="images/nav/galery.gif" border="0" alt="Galéria" title="Galéria" />Galéria</a></li>
<li><a href="gyik.php"><img src="images/nav/faq.gif" border="0" alt="Gyakran Ismételt Kérdések" title="Gyakran Ismételt Kérdések" />Gy.I.K.</a></li>
<div class="nav">
<?php
if ($_SESSION[session_usr_login] != "yes") {
print '
<li><a href="login.php"><img src="images/nav/login.gif" border="0" alt="Belépés" title="Belépés" />Belépés</a></li>
<li><a href="register.php"><img src="images/nav/register.gif" border="0" alt="Regisztráció" title="Regisztráció" />Regisztráció</a></li>
';
}
elseif ($_SESSION[session_usr_login] == "yes") {
print '
<li><a href="/profile.php"><img src="images/nav/profile.gif" border="0" alt="Profil" title="Profil" />Profil</a></li>
<li><a href="logout.php"><img src="images/nav/logout.gif" border="0" alt="Kilépés" title="Kilépés" />';
$user_id_kiolvas = mysql_query("SELECT * FROM users WHERE user_id = '$_SESSION[session_usr_id]'");
$user_id_kiolvas_kiir = mysql_fetch_assoc($user_id_kiolvas);
extract($user_id_kiolvas_kiir, EXTR_OVERWRITE);
print 'Kilépés [ '.$name.' ]';
print '</a></li>
';
}
?>
</ul>
</div>
</div>
<br /><br /><br />
<?php
if ($_SESSION[session_usr_login] == "yes") {
print "<div class=\"tipikhiba\">Ahoz, hogy belépj egy felhasználóval, ki kell jelentkezned a mostanival!</div>";
}
elseif ($_SESSION[session_usr_login] != "yes") {
print '
<h1 class="hlog">Belépés</h1>
<br /><br />
<div align="center">
<table class="logintab">
<form action="login.php" method="post">
<tr><td>Felhasználónév:</td><td>
<input type="text" name="login_usr_usr" maxlength="20" size="25" class="textinp" value="'.$_POST[login_usr_usr].'" />
</td></tr>
<tr><td>Jelszó:</td><td>
<input type="password" name="login_usr_pass" maxlength="20" size="25" class="textinp" />
</td></tr>
<tr><td> </td><td><input type="submit" value="Belépés" class="subinp" name="login_usr_sub" /></td></tr>
</table>
</div>
<br />
';
}
?>
<?php
if (isset($_POST[login_usr_sub])) {
include("includes/login.inc");
if (!jelszoellenorzes("$_POST[login_usr_usr]", "$_POST[login_usr_pass]")) {
print "<div class=\"tipikhiba\">Rossz felhasználónév, vagy jelszó!</div>";
}
elseif (jelszoellenorzes("$_POST[login_usr_usr]", "$_POST[login_usr_pass]")) {
$usr_login_lekeres = mysql_query("SELECT * FROM users WHERE username = '$_POST[login_usr_usr]'");
$usr_login_lekeres_kiir = mysql_fetch_assoc($usr_login_lekeres);
extract($usr_login_lekeres_kiir, EXTR_OVERWRITE);
if ($deleted == "yes") {
print "<div class=\"tipikhiba\">A felhasználó törölve lett az oldalról, de adatai megmaradtak.<br />Visszavonásért keresd az adminisztrátort!</div>";
}
elseif ($deleted == "no") {
$_SESSION[session_usr_login] = "yes";
$_SESSION[session_usr_id] = $user_id;
$_SESSION[session_usr_level] = $user_level;
header("Location: index.php");
}
}
}
?>
<br /><br /><br />
<div class="footer">
<?php
print $page_site_footer;
?>
</div>
<br /><br />
</body>
</html>
Egy elsznát de szomorú weboldal szerkesztő.
Puffer
három tanács
1. Érdemes úgy fejleszteni, hogy az error_reporting be van kapcsolva. Ekkor a php szépen kiírja, hogy hol vannak hibák.
2. A tömböket a
3. Nem hasznos SELECT * FROM formában lekérdezni a mysql táblából az adatokat, két okból. Egyrészt lehet, hogy sokkal több adatot kérünk le, mint amire szükségünk van, másrészt nem tudjuk pontosan, milyen mezőnevek is vannak az eredményben. Főleg akkor válik ez kellemetlenné, ha valaki másnak kell folytatni, vagy javítani a programunkat.
Gyulus
BOM
Más: a jelszoellenorzo() függvényed tartalmát nem ismerjük, de figyelj rá, hogy ne lehessen benne biztonsági rés - épp most volt erről szó.
D.
http://e-arc.hu/
<Nincs cím>
<Nincs cím>
Pont úgy, ahogy a jelszoellenorzes-nem csinálod:
Egyébként ez az egész dolog nem annyira lényeges, csak egy kis módszertani adalék.
Gyulus