einfaches Passwortprogramm

TigerKath

Grünschnabel
Hallo,

ich suche ein einfaches Passwortprogramm, welches
eine Geheime Seite nur mit einem Passwort sichert!
Mit PHP sollte ja so etwas ziemlich sicher sein...ich
probiere auch schon die ganze zeit, doch mit
dem Quelltext da unten kann ich das Passwort auch
falsche ingeben und ich komme trotzdem auf die
geheime seite:

passwort.php

<head>
<title>Formulardaten eingeben</title>
<meta name="author" content="123" />
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1" />
</head>
<body >
<h4>Passwortgeschützte-Seite</h4>
<form action="passwort2.php" method="post">
<pre>
<label>Passwort: </label><input type="text" name="pass" /><br />

<input type="Submit" value="abschicken" /><br />

</pre>
</form>
<?php
var $passwort="Stelzenberg";

if ( $passwort=="Stelzenberg")
{
document.f1.out_href="passwort2.php";
}
else
{
echo "<p>Falsches Passwort</p>";
}
?>
<p><a href="http://validator.w3.org/check?uri=referer">valid?</a></p>
</body>
</html>


Passwort2.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>Gewünschte Seite</title>
<meta name="author" content="123" />
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1" />
</head>
<body >
<?php
echo "<p>Das ist meine Homepage</p>";

?>
<p><a href="http://validator.w3.org/check?uri=referer">valid?</a></p>
</body>
</html>



Bitte helft mir...wo habe ich was falsch gemacht und wie ist es
richtig?!
 
Hi!

Ersetz mal den PHP Code in der passwort.php durch folgenden Code:
PHP:
<?php
$passwort = "Stelzenberg";

if($passwort == "Stelzenberg")
{
  header("Location: passwort2.php");
  exit;
}
else
  echo "<p>Falsches Passwort</p>";
?>
Das sollte Dir helfen!

redlama
 
Hier ein Beispiel für ein sehr einfaches Login:

Das Formular

HTML:
<form action="login-pruefung.php" method="post">
<br>
<table width="60%" border="0" align="center" cellpadding="3" cellspacing="0">
  <tr>
    <td width="50%">Geben Sie das Passwort ein: </td>
    <td width="50%"><input name="Passwort" size="20" type="password"></td>
  </tr>
  <tr>
    <td><input name="Send" type="submit" value="Login"></td>
    <td>&nbsp;</td>
  </tr>
</table>
</form>

Die Datei login-pruefung.php:
PHP:
<?php
$Zugangspasswort = "mein_passwort";
if($_REQUEST['Send'] && $_REQUEST['Passwort']==$Zugangspasswort)
{
	session_start();
	session_register("SESSION_Passwort");
	$SESSION_Passwort=$Zugangspasswort;
}
?>
<html>
<head>
<title>Login</title>
</head>
<body>
<?php
if($SESSION_Passwort==$Zugangspasswort)
{
	echo"<meta http-equiv='refresh' content='2; URL=sichere_seite.php'>";
	echo"<p align=\"center\" class=\"text\">Sie sind erfolgreich eingeloggt! Sie werden weitergeleitet....
	<br><br>Sollte die Weiterleitung nicht funktionieren klicken Sie bitte <a href=\"sichere_seite.php\"><b>hier</b></a>.</p>";
}
else
{
	echo"<p align=\"center\">Login fehlgeschlagen!<br>Bitte versuchen Sie es nochmal: <a href=\"login.php\">zurück</a></p>";
}
?>
</body>
</html>
Die sichere_seite.php
PHP:
<?php
session_start();
?>
<html>
<head>
<title>Login</title>
</head>
<body>
<?php
$Zugangspasswort = "mein_passwort";

if($SESSION_Passwort==$Zugangspasswort)
{
?>
Mein super geheimer Inhalt
<?
}
else
{
echo"<p align=\"center\" class=\"text\">Sie sind nicht berechtigt die Seite anzuzeigen!<br>Bitte loggen Sie sich vorher <a href=\"login.php\">hier</a> ein.</p>";
}
?>
</body>
</html>

Vielleicht hilft es dir ja weiter.
 
Hallo redlama,

das ist wieder so das ich irgendetwas eingeben kann und das Programm geht trotzdem auf!
Ich kann statt dem richtigen Passwort Stelzenberg, auch Haus oder was weiß ich alles eingeben,
ich komm immer auf diese Seite!
Was mach ich da falsch, ich habe es so gemacht wie du gesagt hast-es geht trotzdem noch nicht also meine ganzes Programm lautet so:

TUTORIAL.php:
<html></html>
<head>
<title>Formulardaten eingeben</title>
<meta name="author" content="123" />
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1" />
</head>
<body >
<h4>Passwortgeschützte-Seite</h4>
<form action="tutorial1.php" method="post">
<pre>
<label>Passwort: </label><input type="text" name="pass" /><br />

<input type="Submit" value="abschicken" /><br />

</pre>
</form>
<?php
$passwort = "Stelzenberg";

if($passwort == "Stelzenberg")
{
header("Location: tutorial1.php");
exit;
}
else
echo "<p>Falsches Passwort</p>";
?>
<p><a href="http://validator.w3.org/check?uri=referer">valid?</a></p>
</body>
</html>


TUTORIAL1.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>Gewünschte Seite</title>
<meta name="author" content="123" />
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1" />
</head>
<body >
Coolie
<p><a href="http://validator.w3.org/check?uri=referer">valid?</a></p>
</body>
</html>

BITTE HELF MIR...ICH BRAUCH DAS UNBEDINGT
WÄRE COOL...
MB
CIAO
 
Hallo Sugar,

danke für deine Hilfe, aber das Programm funkt auch net richtig!
Kannst du nochmal durchgucken
Wäre super nett...ich bräuchte unbedingt hilfe!
bITTTTTTTTTTTEEE
mb
CIAO
 
Solange Du $passwort = "Stelzenberg"; in Quelltext stehen hast, wird das Passwort auch immer korrekt sein, schließlich setzt Du es ja mit dem eben genannten Code!
Ich dachte, dass Du das nur zum testen hattest.
Wenn Du das eingegebene Passwort überprüfen willst, dann solltest Du das ganze so machen:
PHP:
<?php
if(isset($_POST["pass"]))
{
  if($_POST["pass"] == "Stelzenberg")
  {
    header("Location: tutorial1.php");
    exit;
  }
  else
    echo "<p>Falsches Passwort</p>";
}
?>
<html>
  <head>
    <title>Formulardaten eingeben</title>
    <meta name="author" content="123" />
    <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1" />
  </head>
  <body>
    <h4>Passwortgeschützte-Seite</h4>
    <form action="tutorial.php" method="post">
      <pre>
        <label>Passwort: </label>
        <input type="text" name="pass" /><br />
        <input type="Submit" value="abschicken" /><br />
      </pre>
    </form>
    <p><a href="http://validator.w3.org/check?uri=referer">valid?</a></p>
  </body>
</html>
Warum machst Du aus dem Eingabefeld für das Passwort eigentlich kein richtiges Passwortfeld (also mit * Anzeige)?
Wenn Du das willst, dann ersetz mal das type="text" in dem <input> durch type="password".

redlama
 
Hi,
vielen Dank!
Nur noch eine Frage...soll ich das wo du mir gesagt hast alles unter einem speichern oder
wieder zerlegen!
Kannst du mir mal angeben wo ich das und unter welchem namen ich das zu speichern habe

bitte
mb
BYE
 
Das sollte genau so, wie es ist, in der tutorial.php gespeichert werden.
Oder was meintest Du?

redlama
 
Hallo,

also hat das passwortprogramm nur diese eine seite...passwort.php?
Nur so:
<?php
if(isset($_POST["pass"]))
{
if($_POST["pass"] == "Stelzenberg")
{
header("Location: tutorial1.php");
exit;
}
else
echo "<p>Falsches Passwort</p>";
}
?>
<html>
<head>
<title>Formulardaten eingeben</title>
<meta name="author" content="123" />
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1" />
</head>
<body>
<h4>Passwortgeschützte-Seite</h4>
<form action="tutorial.php" method="post">
<pre>
<label>Passwort: </label>
<input type="text" name="pass" /><br />
<input type="Submit" value="abschicken" /><br />
</pre>
</form>
<p><a href="http://validator.w3.org/check?uri=referer">valid?</a></p>
</body>
</html>

Bei mir funkt des programm leider immer noch nicht..!
Und was ist mit tutorial.php und tutorial1.php!
Was soll da rein kommen?

Könntest du mir das bitee nochmal erklären...wäre super!

mfg
mb
CIAO
 
Ja wie denn nun? Heißen Deine beiden Dateien passwort.php und passwort1.php (wie in Deinem Beitrag vom 21.03.05 12:09) oder TUTORIAL.php und TUTORIAL1.php (wie in Deinem Beitrag vom 22.03.05 13:13)?
Wenn sie passwort.php und passwort1.php heißen, dann musst Du in dem von mir geposteten Code TUTORIAL.php und TUTORIAL1.php halt durch passwort.php und passwort1.php ersetzen. Dann sollte es auch laufen.

redlama
 
Zurück