User-1 am 12.04.06 21:20Hallo,
hab volgenden Code:
<?php
if($HTTP_POST_VARS[pw] == "********" && $HTTP_POST_VARS[name] == "xyz-27") {
echo "Gut";
echo "Der geheime Inhalt (...)";
} elseif (isset($_POST["pw"])) && (isset($_Post["name"])) {
die("Falsche Angaben!");
}
?>
Nun wird gemeldet das bei "elseif" nen Fehler drin ist, aber der ist erst da seitem ich da das reingetan hab: " && (isset($_Post["name"]))"
Weiß aber nicht wiso, hier noch mal der Fehler:
Quote
Parse error: parse error, unexpected T_BOOLEAN_AND
xyz-48ke, schon mal für eure Hilfe.
Mfg. BNS
User-2 am 12.04.06 21:33} elseif (isset($_POST["pw"])) && (isset($_Post["name"])) {
// ^ ^
// entfernen
- Warum verwendest du $HTTP_POST_VARS und $_POST?
- Auch Array Schlüssel gehören in Hochkommas.
User-1 am 12.04.06 21:55Noch eine Frage, kann ich in den Code auch irgendwie einen Code unterbringen damit nach dem Einloggen eine Session ensteht?
User-1 am 12.04.06 22:38Hab jetzt selber was in unter selfphp gefunden, und versucht umzusetzen:
Hier der Code:
<?php
$pw = "********";
$name="xyz-27";
if($HTTP_POST_VARS[pw] == "$pw" && $HTTP_POST_VARS[name] == "$name")
session_start();
$SESSION_Passwort = $pw;
session_register("SESSION_Passwort");
echo "Einloggen erfolgreich<br>";
echo "Weiterleitung...";
echo ?><meta http-equiv="refresh" content="30; url=admin.php"><?php
} elseif (isset($_POST["pw"])) {
die ("Falsche Angaben!");
}
?>
Dies ist die Zeile 83:
session_register("SESSION_Passwort");
Dieser Fehler wird angezeigt:
Quote
Warning: Cannot send session cache limiter - headers already sent (output started at C:\FoxServ\www\Re-Design\admin\index.php:7) in C:\FoxServ\www\Re-Design\admin\index.php on line 83
xyz-48ke, schonmal für eure Hilfe.
User-2 am 12.04.06 22:46Du gibst bereits Daten aus, bevor die session_start() aufruftst.
Lies dir das durch und mach es besser als die von Selfphp.
session_register() ist veraltet etc.
User-1 am 12.04.06 22:58Also ganz steige ich da nicht durch, also da steht was von Globalen Session u.s.w, *kopfbrummen*, hab versucht den Code umzuschreiben, d.h. so viel wie ich aus dem text verstehen konnte:
<?php
$pw = "********";
$name="xyz-27";
session_start();
$SESSION_Passwort = $pw;
$SESSION.USE_COOKIES = 0;
session_register("SESSION_Passwort");
if($HTTP_POST_VARS[pw] == "$pw" && $HTTP_POST_VARS[name] == "$name")
echo "Einloggen erfolgreich<br>";
echo "Weiterleitung...";
echo ?><meta http-equiv="refresh" content="30; url=admin.php"><?php
} elseif (isset($_POST["pw"])) {
die ("Falsche Angaben!");
}
?>
leider bleibt der fehler weiter bestehen.
User-3 am 12.04.06 23:04<?php
session_start();
$pw = "********";
$name = "xyz-27";
$_SESSION['passwort'] = $pw;
$SESSION.USE_COOKIES = 0; //hä?
if($_POST['pw'] == $pw && $_POST['name'] == $name)
echo "Einloggen erfolgreich<br>";
echo "Weiterleitung...";
echo ?><meta http-equiv="refresh" content="30; url=admin.php"><?php
} elseif(isset($_POST['pw'])) {
die ("Falsche Angaben!");
}
?>
User-2 am 12.04.06 23:18<?php
session_start();
$pw = '********';
$name = 'xyz-27';
if ($_POST['pw'] == $pw && $_POST['name'] == $name)
$_SESSION['passwort'] = $pw;
echo 'Einloggen erfolgreich<br />';
echo 'Weiterleitung...';
echo '<meta http-equiv="refresh" content="30; url=admin.php" />';
} else {
die('Falsche Angaben!');
}
?>
Die admin.php ist damit aber noch lange nicht passwortgeschützt ;)
User-1 am 13.04.06 11:49Das die admin.php "noch" nicht Passwort geschützt ist, weiß ich, ich wollte ja nur den login!
Aber nachdem ich die Daten eingegeben habe, kommt dieser fehler:
An der Admin kann das ja nicht liegen.
Quote
Warning: Cannot send session cache limiter - headers already sent (output started at C:\FoxServ\www\Re-Design\admin\index.php:7) in C:\FoxServ\www\Re-Design\admin\index.php on line 80
Ich mach mal den Ganzen Code rein:
<?php
$page_titel = 'Adminbereich - Einloggen';
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Internetiv - <?php echo $page_titel; ?></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="css.css">
</head>
<body>
<?php
if ($_GET["login"]=="index") {
?>
<table width="100%" height="100%" border="0">
<tr>
<td height="169"><table width="100%" height="100%" border="0">
<tr>
<td> </td>
<td><div align="center"><img src="../images/schriftzug_internetiv.gif" width="299" height="49"></div></td>
<td> </td>
</tr>
</table></td>
</tr>
<tr>
<td height="471"><form action="index.php?login=send" method="post">
<table width="100%" height="100%" border="0">
<tr>
<td width="26%"> </td>
<td width="48%"><table align="center" width="100%" border="0">
<tr>
<td width="50%">Username:</td>
<td width="50%"><input type="text" name="name"></td>
</tr>
<tr>
<td>Passwort:</td>
<td><input type="password" name="pw"></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" value="Login"></td>
</tr>
<tr>
<td> </td>
<td></td>
</tr>
</table></form>
</td>
<td width="26%"> </td>
</tr>
</table></td>
</tr>
<tr>
<td> </td>
</tr>
</table>
<?php
}
?>
<?php
if ($_GET["login"]=="send") {
?>
<table width="100%" height="100%" border="0">
<tr>
<td height="169"><table width="100%" height="100%" border="0">
<tr>
<td> </td>
<td><div align="center"><img src="../images/schriftzug_internetiv.gif" width="299" height="49"></div></td>
<td> </td>
</tr>
</table></td>
</tr>
<tr>
<td height="471"><table width="100%" height="100%" border="0">
<tr>
<td width="26%"> </td>
<td width="48%"><div align="center">
<?php
session_start();
$pw = '********';
$name = 'xyz-27';
if ($_POST['pw'] == $pw && $_POST['name'] == $name)
$_SESSION['passwort'] = $pw;
echo 'Einloggen erfolgreich<br />';
echo 'Weiterleitung...';
echo '<meta http-equiv="refresh" content="5; url=admin.php" />';
} elseif (isset($_POST["pw"])) {
die('Falsche Angaben!');
}
?></div></td>
<td width="26%"> </td>
</tr>
</table></td>
</tr>
<tr>
<td> </td>
</tr>
</table>
</body>
</html>
User-3 am 13.04.06 11:57session_start() muss ganz an den Anfang der Datei.
User-1 am 13.04.06 12:16ok, hab das so gemacht:
<?php
$page_titel = 'Adminbereich - Einloggen';
session_start();
?>
Aber nun werde ich schon eingeloggt wenn ich einfach auf login klicke, auch mit den falschen angaben.
Wiso?
User-4 am 13.04.06 12:18du sollst ja auch nicht prüfen ob es eine sess-id gibt sondern ob in dieser sess-id auch der richtige usernamen/das richtige pass stecken ;D
User-1 am 13.04.06 12:20welche Variablen muss ich dan noch hinzufügen, b.z. entfernen und mit welchen werten?