Also erstmal vielen Dank für eure Hilfe. Ich weiss das zu schätzen.
Ich habe die Daten mal so eingebaut, leider funktioniert es immer noch nicht korrekt. Die Abfrage
funktioniert leider nicht korrekt und daher hängt er einfach immer den Domain in der URL hinten dran, wenn man sich falsch einlogged. Probiert es mal aus.
Ich poste jetzt mal den Code der einzelnen Dateien, damit man einen besseren Überblick hat.
Codeschnipsel der linken Navi, in der der Loginstatus überprüft und dann die entsprechende Datei inkludiert wird:
<?php if (session_is_registered ("Session_benutzer")) { include ("login_true.inc.php"); } else { include ("login_false.inc.php"); } ?>
Codeschnipsel der login_false.inc.php, die in die linke Navi inkludiert wird:
<form name="check_login" method="post" action="/wp-content/themes/glueck/check_login.php">
<input type="hidden" name="redirect_uri" value="<?php echo $_SERVER['REQUEST_URI']; ?>" />
<tr>
<td class="table_navi_left"><b class="navi">Glücksbotschaft senden</b></td>
</tr>
<tr>
<td bgcolor="#ff8c00"><img src="/wp-content/themes/glueck/images/trans.gif" width="120" height="5"></td>
</tr>
<tr>
<td class="table_navi_left"><input class="textfeld" name="benutzer" type="text" size="13" maxlength="20" value="<?php if ($error == 2){ echo "";} else { echo $benutzer; } ?>"> </td>
</tr>
<tr>
<td bgcolor="#ff8c00"><img src="/wp-content/themes/glueck/images/trans.gif" width="120" height="5"></td>
</tr>
<tr>
<td class="table_navi_left"><input class="textfeld" name="passwort" type="password" size="13" maxlength="20" value="<?php if ($error == 1){ echo "";} else { echo $passwort; } ?>"> </td>
</tr>
<tr>
<td class="table_navi_left"><div align="right"> <a href="javascript: document.check_login.submit()" class="navi">einloggen</a><br>
<a href="vergessen.php" class="navi">pw vergessen?</a></div></td>
</tr>
<tr>
<td bgcolor="#ff8c00"><img src="/wp-content/themes/glueck/images/trans.gif" width="120" height="5"></td>
</tr>
<?php if ($error == 2){ echo "
<tr>
<td class=\"table_navi_left\"><span class=\"error\">
Dieser Benutzer-<br>name ist uns nicht bekannt!</span><br><br>
</td>
</tr>";}
if ($error == 1){ echo "
<tr>
<td class=\"table_navi_left\"><span class=\"error\">
Dieses Passwort<br>ist uns nicht bekannt!</span><br><br>
</td>
</tr>";}
?>
</form>
Alles anzeigen
Codeschnipsel der check_login.php die bei Klick auf "einloggen" aufgerufen wird:
<?php
session_start();
include ("/www/htdocs/w006a2a6/wp-content/themes/glueck/datenbankdatei.php");
$error = 0;
$sql = mysql_query( "SELECT * FROM mitglieder WHERE benutzer = '$benutzer'" );
if (mysql_num_rows($sql) > 0) {
$datensatz = mysql_fetch_array( $sql );
if ($datensatz['passwort'] == $passwort) {
if (!session_is_registered ("Session_benutzer")) {
session_register("Session_benutzer");
$Session_benutzer = $datensatz['benutzer'];
}
$login = true; //erfolgreich eingeloggt
include ("http://www.gluecksbotschaften.de/schreiben/"); //ich muss die Datei so ansteuern, aber wie übergebe ich die Variable, das man eingelogged ist???
} else {
$error = 1; //Falsches Passwort
$login = false; //nicht eingeloggt
$location = $_SERVER['HTTP_HOST'].$_POST['redirect_uri'];
header( "Status: 302 Moved Temporarily" );
header("Location: $location");
}
} else {
$error = 2; // Falscher Benutzername
$location = $_SERVER['HTTP_HOST'].$_POST['redirect_uri'];
header( "Status: 302 Moved Temporarily" );
header("Location: $location");
}
mysql_close( $verbindung );
?>
Alles anzeigen
Codeschnipsel der login_true.inc.php:
<td class="table_navi_left"><span class="navi">Hallo <b><?php echo $Session_benutzer.","; ?></b>
schön das du da bist!<br><br>Du hast seit dem xx.xx.2007 <b>999</b> Glücksbotschaften versendet!</span></td>
Es fällt mir relativ schwer das zu erklären, aber man muss es doch hinbekommen, das die Informationen des Loginstatus mit Aufruf einer URI übergeben werden. Aber wie soll man das machen, wenn man keine Seite direkt ansteuern darf. Wenn man zum Beispiel nach dem Login auf einen anderen Link klickt, dann ändert sich der Status ja und man wird unterhalb der linken Navi begrüßt
<span class="navi">Hallo <b><?php echo $Session_benutzer.","; ?></b>
schön das du da bist!<br><br>Du hast seit dem xx.xx.2007 <b>999</b> Glücksbotschaften versendet!</span>
Die Variable $Session_benutzer versuche ich Testweise auch auf der Seite zum schreiben der Nachricht auszugeben und es funktioniert nicht... In der linken Navi kann er die Variable ausgeben und im Contentbereich der gleichen Seite funktioniert es nicht mehr.
Alles sehr verwirrend für eine kleine Leuchte wie mich :roll: Bringt ihr Licht ins Dunkel?