Mam jednoduche prihlaseni pres sessions.
1) prihlasovaci formular
2) zpracovavajici soubor (zpracuj.php)
3) tajna stranka (kam vas to presmeruje priu uspesnem prihlaseni)
Problem je ze mi to hlasi ze uz hlavicky byly poslany... a proste error... na strance 2. Zpracuj.php
Zde je kod ..diky za opravu.
-----
<? session_start(); ?>
<head>
<style>
span, span2 { background-color: silver; display: block; padding: 3px; width: 350px; font-family: Trebuchet MS;}
a { td: underline; color: red;}
a:hover { text-decoration: none; background-color: f0f0f0;}
</style>
</head>
<?
extract($_POST);
$_SESSION['id'] = $_POST['id'];
if ($id == "a" && $password == "b")
{
session_register("ok");
$_SESSION['ok'] = 'ok2';
header("location:tajna.php");
}
else
{
echo "<span>přihlášení se nepovedlo !";
echo " <a href='index.php'>zkus to znovu</a></span>";
}
?>
-----
a toto je 3. stranka (tajna.php)
<?session_start(); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<head>
<link href="../css/admin.css" rel="stylesheet" type="text/css" />
</head>
<body>
<?
if ($_SESSION['ok']!= 'ok2') { echo " nepřihlásil ses !";}
else {
// tajna stranka
echo "<div id=\"horni\"> user is logged as <strong>" . $_SESSION['id'] . "</strong>". "</div>";
echo "<div class=\"polozka\">
<a href=\"#\">odkaz</a>
<a href=\"#\">odkaz</a>
<a href=\"#\">odkaz</a>
<a href=\"#\">odkaz</a>
<a href=\"#\">odkaz</a>
<a href=\"#\">odkaz</a>
";
echo '<a href="logout.php">Odhlásit se</a>';
echo "<div id=\"stred\"> aa</div>";
}
?>
</body>
DIKY MOC, pokud se Vam to bude chtit cist a opravit
22k
Moc jsem to nečetl. Ale hlášky typu hlavička byla poslána je způsobena posláním hlavičky dvakrát. Předpokládám, že session informace se posilaji v hlavičce, nesmí tedy být nic, co by zapříčinilo poslání hlavičky. Tedy napřed zpracovat sessions a pak posílat cokoli jiného. Před sessions asi nesmí být ani prázdný řádek, pokud tam je nějaký include, tak ten taky nesmí nic psát. Narazil jsem na to, že měl jsem include souborů s fcemi a byl tam prázdný řádek po ?>, který zapříčinil poslání hlavičky.
Takže před '<?php' máš mezeru? prázdný řádek? Víc nevím.
No diky za echo, vyresil sem to asi 5 minut po napsani threadu ;). Problem byl v tom, ze proste to HTMLKO a vubec .. musi bejt az po php skriptu .. takze to pak uz jelo. DIky ale ;)