| Autor | Zpráva | ||
|---|---|---|---|
| kozusnik.jan Profil * |
#1 · Zasláno: 19. 5. 2011, 17:05:14
Ahoj, potřeboval bych poradit. Na webu mám udělané přihlášení do administrace, ale když se chci přihlásit, tak mi to háže:
Musíte se prihlásit! Notice: A session had already been started - ignoring session_start() in D:\wamp\wamp\www\Kopie - IVT - projekt(new)\hlavicka.php on line 2 Fatal error: Cannot redeclare iduzivatele() (previously declared in D:\wamp\wamp\www\Kopie - IVT - projekt(new)\func.php:2) in D:\wamp\wamp\www\Kopie - IVT - projekt(new)\func.php on line 11 Vím co to znamená, ale nevím jak to zpravit. Můžete mi prosím poradit? soubory: func.php: <?php
function iduzivatele ($prezdivka, $heslo, $link)
{
$vysledek=mysql_query("select id from users where login='".$prezdivka."' and heslo='".md5($heslo)."'", $link);
if (mysql_num_rows($vysledek)==0)
return false;
else {
$radek = mysql_fetch_array($vysledek);
return $radek["id"];
}
}
function loginuzivatele ($prezdivka, $heslo, $link)
{
$vysledek2=mysql_query("select login from users where login='".$prezdivka."' and heslo='".md5($heslo)."'", $link);
if (mysql_num_rows($vysledek2)=="")
return false;
else {
$radek2 = mysql_fetch_array($vysledek2);
return $radek2["login"];
}
}
?>hlavicka.php: <?php
session_start();
$chybaprihlaseni ="";
setcookie("chybaprihlaseni", $chybaprihlaseni , mktime(1));
require "./func.php";
$spojeni = mysql_connect("-------", "--------") or die ("Nelze najít databázi!");
mysql_select_db("womap") or die ("Nelze se pripojit k dané tabulce!");
if (isset($_POST['prihlasit']))
{
$id = iduzivatele($_POST["prezdivka"], $_POST["heslo"], $spojeni);
if ($id<>0) $_SESSION["id"]=$id;
$log = loginuzivatele($_POST["prezdivka"], $_POST["heslo"], $spojeni);
if ($log!="") $_SESSION['login']=$log;
Header("Location:administrace.php");
}
elseif (isset($_GET['odhlasit']))
{
if($_GET['odhlasit']=="yes"){
unset($_SESSION["id"]);
unset($_SESSION['login']);
Header("Location: index.php");
}
}
.........login.php: (zde je přihlašovací formulář) <?php include("hlavicka.php"); ?>
<body>
<div id="kontejner">
<form action="<?php /* echo $_SERVER['PHP_SELF']*/?>" method="post" name="login" id="login">
<?php
echo '<ul>';
if(isset($_POST['prihlasit'])) {
if (!isset($_SESSION["id"])) {
echo"Špatné uživatelské jméno a/nebo heslo!";
}}
/*else if(isset($_SESSION['id'])) echo"<li>Už jste prihlášen jako ".$_SESSION['login']."<br></li>";
*/
if(!isset($_SESSION['id']))
echo '
<table>
<tr><td>Login</td><td><input class="text" type="text" name="prezdivka" id="prezdivka"></td></tr>
<tr><td>Heslo</td><td><input class="text" type="password" name="heslo" id="heslo"></td></tr>
<tr><td><a href="index.php?registrace">Registrovat</a></td>
<td><input type="submit" name="prihlasit" id="prihlasit" value="Prihlásit" class="prihlasit" ></td>
</tr>
</table>
';
if(isset($_SESSION['id'])) echo'<li><input type="submit" name="odhlasit" id="odhlasit" value="Odhlásit" class="odhlasit" ></li>';
echo'</ul>';
?>
</form>
</div>
</body>
</html>Omlouvám se, že je to tak dlouhé, ale radši jsem to dal celé :) |
||
| Spectator Profil |
#2 · Zasláno: 19. 5. 2011, 17:59:04
Znovu načítáš a vytváříš, co už někde máš.
Vypadá to, že dvakrát spouštíš session a dvakrát deklaruješ iduzivatele() |
||
| kozusnik.jan Profil * |
#3 · Zasláno: 19. 5. 2011, 18:20:37
Aha. A nevíte jak to zpravit? Já jsem to několikrát projížděl ale nic jsem nenašel :(
|
||
| Spectator Profil |
#4 · Zasláno: 19. 5. 2011, 22:27:05
Bude to někde v těch vkládaných souborech
|
||
|
Časová prodleva: 15 dní
|
|||
| kozusnik.jan Profil * |
#5 · Zasláno: 4. 6. 2011, 10:13:46
Ok, ale kde? Já to hledám a nemůžu nic najít :(
|
||
| kozusnik.jan Profil * |
#6 · Zasláno: 4. 6. 2011, 10:15:25
Aha, tak už to mám :) já vkládal soubor administrace.php, do kterého jsem ještě includoval hlavicku :) už je to v pohodě... moc dík za rady :)
|
||
|
Časová prodleva: 15 let
|
|||
0