Hallo,
ich bin am verzweifeln. Entweder bin ich so dumm oder ich kapier es nicht. Ich möchte gerne auf einer PHP Seite index.php verschiedene Linkbereiche unterscheiden und aufrufen um dann entweder eingeloggt oder nicht eingeloggt zu unterscheiden. (auf allen Seiten)
Beispiel:
Auf der Seite habe ich im Bereich if($status == start){ ... } ein Login-Formular definiert:
Auf der Startseite kann man sich einloggen. Jetzt möchte ich gerne erreichen dass wenn sich jmd. eingeloggt hat, dieser über alle Bereiche eingeloggt bleibt. Welche Zusatzvariablen muss ich dafür verwenden?
Zu diesem Zweck habe ich inter index.php?status=login eine Abfrage und den Start der SESSION (session_start();
Ich hatte versucht ünber die Links eine SID mitzugeben um anzuzeigen dass der user bereits angemeldet ist, doch der Versuch ist gescheitert.
wenn ich wieder sie Startseite aufrufe, kennt er den Benutzer nicht mehr und man muss sich erneut anmelden :-(
Am Anfang der Seite index.php habe ich folgendes Script stehen:
Aber ich komme einfach nicht weiter. Kann mir bitte jemand einen Tipp geben wie der Benutzer dauerhaft angemeldet bleibt?
Vielen Dank
Gruß Matze
ich bin am verzweifeln. Entweder bin ich so dumm oder ich kapier es nicht. Ich möchte gerne auf einer PHP Seite index.php verschiedene Linkbereiche unterscheiden und aufrufen um dann entweder eingeloggt oder nicht eingeloggt zu unterscheiden. (auf allen Seiten)
Beispiel:
PHP:
<a href="index.php?status=start">Start</a>
<a href="index.php?status=anleitung">Anleitung</a>
<a href="index.php?status=steuer">Steuerung</a>
<a href="index.php?status=faq">FAQ</a>
<a href="index.php?status=applet">Applet</a>
PHP:
if($status == start){
...
<form action="index.php?status=login" method="POST">
<!-- hier folgen die Formularelemente -->
<table border="0" cellpadding="0" cellspacing="4">
<tr>
<th colspan="2">Melden Sie sich hier bitte an.</th>
</tr>
<tr>
<td align="right">User</td>
<td><input name="user" type="text" size="30" maxlength="30" value="User"></td>
</tr>
<tr>
<td align="right">Password:</td>
<td><input name="passwd" type="password" size="30" maxlength="40" value="Password"></td>
</tr>
<tr>
<td><input type="submit" value=" Absenden "></td>
<td><input type="reset" value=" Abbrechen"></td>
</tr>
<tr>
<td colspan="2" class="passwd">* Passwort <a href="index.php?status=forgot">vergessen</a>?</td>
<tr>
</table>
</form>
...
}
Zu diesem Zweck habe ich inter index.php?status=login eine Abfrage und den Start der SESSION (session_start();
PHP:
if($status == login){
?>
<div id="content">
<b>PHP-INFO</b>:<br />
<script type="text/javascript" src="js/tree.js"></script>
</div><!-- div content -->
<?php
$data = mysql_query("SELECT * FROM user");
if (!$data) {
die(mysql_error());
}
$row = mysql_fetch_array($data);
$uservalue = $row['username'];
$passvalue = $row['password'];
if($_SESSION['BenutzerID'] == $uservalue && $_SESSION['PasswordID'] == $passvalue) {
session_start();
echo $_SESSION['benutzer'] . 'leer';
?>
<div id="content">
angemeldet !!
</div>
<?php
}
else
{
echo '<div id="login">Access denied !';
echo '<br /><br /><br /><br />
<a href="#" onclick="history.go(-1);return false">nochmals probieren</a>';
echo '</div>';
}
?>
<!-- footer -->
<div id="footer">
best view: 1024 x 768<br>
<?php
// Gibt z.B. aus: somefile.txt was last modified: December 29 2002 22:16:23.
$filename = 'index.php';
if (file_exists($filename)) {
echo "$filename was last <b>modified</b>: " . date ("F d Y H:i:s", filemtime($filename));
}
?>
</div>
<!-- footer -->
<?php
}
PHP:
<a href="index.php?status=start&' . SID . '">start</a>';
Am Anfang der Seite index.php habe ich folgendes Script stehen:
PHP:
<?php
// Errors auf der Seite anzeigen
//error_reporting(E_ALL);
session_start();
$_SESSION['benutzer'] = $_POST['user'];
$_SESSION['geheim'] = $_POST['passwd'];
$_COOCKIE['BenutzerID'] = $_SESSION['benutzer'];
$_COOCKIE['PasswordID'] = $_SESSION['geheim'];
// Es wird ueberprueft ob POST oder GET Variablen gesetzt sind und wenn ja neu zugeordnet
if (isset($_POST['status'])) {
$status = $_POST['status'];
} else
{ if (isset($_GET['status'])) {
$status = $_GET['status'];
}
else {
$status = "start";
}
}
?>
Vielen Dank
Gruß Matze