Hozzászólások
sziasztok!
csináltam egy scriptet
ami a beléptetést szabályozza
1, ellenőrzi a html-ről jövő (POST) adatokat:
1,a mindkét mezőt kitöltötték-e
1,b adatok helyességét (MySql táblából kéri le)
(ha nem oké akkor visszaírányít a belépőhelyre)
ha minden oké:
2, setcookie -val beállítunk egy cookie értéket neki, hogy a továbbiakban tudjon menni
a cuki.php tartalmaz egy print "$_COOKIE['jogos']; sort,
ha nem oké az adat
3, visszairányít az belépőhelyre
hibaüzenetként kapom meg, hogy a header információt már nem tudjuk módosítani,mert elküldésre került
erre akartam alkalmazni az ob_start ob_end_flush "párost"
de nem egy :(
próbáltam:
1,hogy az egész scriptet keretbe zárja (ob_start() kezdődik, ob_end_flush végződik),
2, csak a setcookie részt raktam be
ugyanaz a vége,
cannot modify headers information - already sent
<?php
if ((!$_POST[nev]) || (!$_POST[jelszo]))
{
header ("location: index.php");
exit;
}
$contact=mysql_connect("localhost","root") or die ("nincs kapcsoalt" .mysql_error());
mysql_select_db("andras",$contact);
$sql="SELECT v_nev,k_nev FROM auth2 WHERE felh_nev = '$_POST[felh_nev]' AND jelszo = password('$_POST[jelszo]')";
$result= mysql_query($sql,$contact) or die("Sikertelen belépés, nincs kapcsolat" .mysql_error());
if (mysql_num_rows($result) ==1)
{
setcookie("jogos","1" , 0, "/", "",0);
$uzenet="sikeresen beleptel<br>";
$uzenet="<a href=\"cuki.php\">tovább</a>";
}
else
{
header("Location:index.php");
exit;
}
print "<html>";
print "<head>";
print "<title></title>";
print "</head>";
print "<body>";
print "sikeresen beléptél<br>";
print $uzenet;
print "</body>";
print "</html>";
?>
elnézést a hosszért, és köszi
hova tegyem be az ob_startot és a flush -t, hogy működjön?
- A hozzászóláshoz be kell jelentkezni
Nézd meg, hogy az ob_akármi (vagy bármilyen header-módosító/bővítő dolog) _előtt_ kiküldtél-e akár egyetlen karaktert is! Pl. ha a "<?php" előtt akár csak egy üres sor is van, már nem nyertél; vagy ha a fájl végén levő "?>" után van még egy soremelés, az is meg tud szivatni. Ugyanez vonatkozik az összes php fájlra, ami az általad hivatkozottat include vagy bármi más módon hívja - mert ha jól látom, akkor igazából nem a főprogramot emelted be ide.
Természetesen a tévedés jogát fenntartom...
- A hozzászóláshoz be kell jelentkezni
köszi ez volt a gond :)
- A hozzászóláshoz be kell jelentkezni
Sziasztok!
Ismét lenne egy kérdésem ezzel a kóddal kapcsolatban:
if (mysql_num_rows($result) ==1)
{
while ($sor=mysql_fetch_array($result))
{
$cuki=$sor["date"];
}
setcookie("jogos","$cuki" , 0, "/", "",0);
$uzenet="sikeresen beleptel<br>";
$uzenet="<a href=\"cuki.php\">tovább</a>";
}
else
{
header("Location:index.php");
exit;
}
a cookie nem kapja meg az értéket
a $result már egy végrehajtott lekérdezés eredménye
a nevet kiírja ha adok neki egy print $sor["nev"]; parancsot, de a dátumot nem,
az lehet a gond, hogy a date érték egy a regisztrálás(év:hó:nap:óra:perc:sec) dátumából képzett md5 érték?
ha igen akkor ezt(a dátum md5 értékét) hogyan tudom abba a változóba ($cuki) belegyömöszölni?
köszi a segítséget
- A hozzászóláshoz be kell jelentkezni