Bejelentkezés - setcookie probléma
Sziasztok!
Eléggé új vagyok a programozás terén, szóval előre is elnézést kérek mindenkitől, ha számotokra triviális dolgokra kérdezek rá.
Egy beléptető rendszert szeretnék létrehozni, ahol eljutottam addig, hogy leelenőrzi a felhasználót és a jelszavát és belépteti ha sikeres, ellenkező esetben nem.
A továbbiakban azt szeretném, ha sikeres bejelentkezés után létrehozna egy cookie-t, ami eltárolja a felhasználó nevét.
A kód:Amikor sikeresen bejelentkezik, azaz el kellene készülnie a cookienak, a következő hibát dobja ki:
Ami erre a sorra utal:Firefoxot használok és a cookie-k engedélyezve vannak.
Tudna valaki segíteni, hogy hol, miben lehet a hiba? Esetleg tudna valaki ajánlani valamilyen másik (számotokra logikusabb) bejelentkezés rendszert, ami nem cookie-val van megoldva?
- Előre is köszönet! -
■ Eléggé új vagyok a programozás terén, szóval előre is elnézést kérek mindenkitől, ha számotokra triviális dolgokra kérdezek rá.
Egy beléptető rendszert szeretnék létrehozni, ahol eljutottam addig, hogy leelenőrzi a felhasználót és a jelszavát és belépteti ha sikeres, ellenkező esetben nem.
A továbbiakban azt szeretném, ha sikeres bejelentkezés után létrehozna egy cookie-t, ami eltárolja a felhasználó nevét.
A kód:
include('connect.php');
$nick = $_REQUEST['nick'];
$jelszo = $_REQUEST['jelszo'];
$submit = $_REQUEST['submit'];
$hibas = $_REQUEST['hibas'];
$eredmeny = mysql_query("SELECT * FROM MyDB WHERE Nick like ('$nick') AND Jelszo like ('$jelszo')");
$login = mysql_num_rows($eredmeny);
if((isset($submit)) or (isset($hibas)))
{
if($login==1){
setcookie("MyCookie", $nick); //ez történik ha sikerül belépni
include('sikeres.php');
}else{
include('sikertelen.php'); //ez történik ha nem sikertül belépni
}
}else{
if(isset($hibas))
{
include('sikertelen.php');
}else{
include('form_bej.php');
}
}
Warning: Cannot modify header information - headers already sent by (output started at ...index.php:9) in ...index.php on line 55.
Ami erre a sorra utal:
setcookie("MyCookie", $nick); //ez történik ha sikerül belépni
Tudna valaki segíteni, hogy hol, miben lehet a hiba? Esetleg tudna valaki ajánlani valamilyen másik (számotokra logikusabb) bejelentkezés rendszert, ami nem cookie-val van megoldva?
- Előre is köszönet! -
Mindenekelőtt
Másodsorban: ha rékeresel akár itt a Weblaboron a hibaüzenetre találsz ezer és egy topicot, olyat, mint ez, akik szintén újat nyitottak ahelyett, hogy rákerestek volna. Röviden: a cookie (és más header függvények) előtt nem lehet semmilyen output, sem echo, sem print, sem pedig egy üres sor egy beiclude-olt fájl végén.
Keresd meg az index.php 9-es sorát (fekete fehéren ott a hibaüzenetben), majd szervezd át a kódodat, hogy a login még az output ELŐTT fusson le. Vagy kapcsold be az output bufferinget.
B
Egy üres sor lehet ;-)