| Autor | Zpráva | ||
|---|---|---|---|
| slawe Profil |
#1 · Zasláno: 28. 9. 2012, 23:32:26
Zdravím, mám takový menší problém s přihlašováním uživatelů: když se uživatel přihlásí, tak jej to nepřesměruje, ale vyskočí chyba
Warning: Cannot modify header information - headers already sent by (output started at /data/web/virtuals/29193/virtual/www/subdom/ari/login.php:2) in /data/web/virtuals/29193/virtual/www/subdom/ari/login.php on line 28 Zdrojový kod přihlašování: <!DOCTYPE html>
<?php
require "config.php";
Hlavicka("Systém pro sdílení dat - Login");
$chyba="";
$ip=$_SERVER["REMOTE_ADDR"];
$cas = time();
if (isset($_POST["send"])) {
try {
$_POST["nick"] = esc($_POST["nick"]);
$_POST["password"] = esc($_POST["password"]);
if (!empty($_POST["nick"]) && !empty($_POST["nick"])) {
$call = $db->query("SELECT id_user,pass,admin,aktiv FROM user WHERE nick='$_POST[nick]'");
$data = $call->fetch();
if (!empty($data)) {
$hash = hash("sha512", $_POST["password"] . "fg35hd4f&dsg3#stgs9_jo%74?9");
if ($hash == esc($data["pass"])) {
$db->exec("INSERT INTO log VALUES(NULL,'esc($data[id_user])','$ip','$cas')");
//session_start();
$_SESSION["userid"] = esc($data["id_user"]);
$_SESSION["useradmin"] = esc($data["admin"]);
$_SESSION["useraktiv"] = esc($data["aktiv"]);
$_SESSION["on"] = 1;
//session_start();
header("Location: index.php");
} else {
$chyba = "<span class=\"cervena\">Špatné heslo.</span>";
}
} else {
$chyba = "<span class=\"cervena\">Zadaný nick nenalezen.</span>";
}
} else {
$chyba = "<span class=\"cervena\">Musíte zadat nick a heslo.</span>";
}
} catch (PDOException $e){
$chyba = "<span class=\"cervena\"> Došlo k chybě: ".$e->getMessage()."</span>\n";
}
}
echo "<div id=\"Header\"></div>
<div id=\"Main\">
<h1>Přihlášení</h1><br />
".$chyba."<br />
<form action=\"\" method=\"post\">
<table>
<tr>
<td>Nick:</td>
<td><input name=\"nick\" class=\"inputsirka\"></td>
</tr><tr>
<td>Heslo:</td>
<td><input name=\"password\" type=\"password\" class=\"inputsirka\"></td>
</tr><tr>
<td colspan=2><input type=\"submit\" name=\"send\" value=\"LOGIN\" class=\"inputsirka\"></td>
</tr>
</table>
</form>
<a href=\"zapomenuteheslo.php\">Zapomenuté heslo</a></div>";
Footer();
?>Na začátku requirleého configu mám příkaz ob_start(); V kodu mam zakomentovaný příkaz session_start(); a to proto, že když jej odkomentuju, tak se mi zobrazí 2x ta samá chyba k té předchozí: Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /data/web/virtuals/29193/virtual/www/subdom/ari/login.php:2) in /data/web/virtuals/29193/virtual/www/subdom/ari/login.php on line 22 Server jede na PHP 5.3 (hosting je na wedosu) Nějaký tip, kde jsem to podělal? Díky |
||
| shaggy Profil |
#2 · Zasláno: 28. 9. 2012, 23:42:59
slawe:
Prečítal som si chybovú hlášku, zbadal som prvý riadok tvojho kódu a bolo mi všetko jasné. Skúšal si aspoň trochu hľadať, prečítal si si najčastejšie chyby tu na fóre: Nejčastější potíže s PHP (FAQ) Keby si to urobil, tak by si na tú chybu prišiel určite aj sám. |
||
|
Časová prodleva: 14 let
|
|||
0