Hallo Leute,
mein header problem habe ich vorerst mal gelöst. Zwar nicht mit einem Template, sondern mittels Javascript, da ich noch nie mit Templates gearbeitet habe und dieses Projekt auch nicht sehr groß ist. Das funktioniert schon mal.
Aber ich hab ein Login-Problem.
Wenn ich meinen Browser öffne, erscheint mein Loginformular. Wenn ich jetzt BN und PW zum 1. mal eingebe, passiert nichts. Ich muss also nochmals BN und PW eingeben und erst nach der 2. eingabe komme ich auf das gewünschte Fenster.
Anbei mal meine Index.php:
und nun meine Login.php
Liegt es an der Session?
mein header problem habe ich vorerst mal gelöst. Zwar nicht mit einem Template, sondern mittels Javascript, da ich noch nie mit Templates gearbeitet habe und dieses Projekt auch nicht sehr groß ist. Das funktioniert schon mal.
Aber ich hab ein Login-Problem.
Wenn ich meinen Browser öffne, erscheint mein Loginformular. Wenn ich jetzt BN und PW zum 1. mal eingebe, passiert nichts. Ich muss also nochmals BN und PW eingeben und erst nach der 2. eingabe komme ich auf das gewünschte Fenster.
Anbei mal meine Index.php:
PHP-Code:
<html>
<head>
<title>Index</title>
<link rel="stylesheet" type="text/css" href="css/basic.css">
</head>
<body>
<h1>OnlineTest-System</h1>
<?php
include_once ("login.php");
?>
</body>
</html>
PHP-Code:
<?php
// Session starten
session_start ();
//error_reporting(E_ALL);
// Datenbankverbindung aufbauen
include ('system/mySQL.php');
$db=new mysql(DB_ONLINETEST);
//Funktionsaufruf
main();
function main() {
$action = 0;
if (isset($_REQUEST['action']))
$action = $_REQUEST['action'];
switch ($action) {
case 0: showLogin(); break;
case 1: checkLogin(); break;
default: showLogin(); break;
}
}
//Loginformular
function showLogin() {
echo '<form name="login" action="'.$_SERVER['SCRIPT_NAME'].'" method="post">';
echo '<div align="center">';
echo '<fieldset id="loginpanel">';
echo ' <legend>Login</legend>';
echo ' <br />';
echo ' <table>';
echo ' <tr align="left"><td>Benutzername: </td><td><input type="text" name="user" tabindex="1" /></td></tr>';
echo ' <tr align="left"><td>Passwort: </td><td><input type="password" name="pwd" tabindex="2" /></td></tr>';
echo ' <tr><td colspan="2"><input type="hidden" name="action" value="1" /></td></tr>';
echo ' <tr align="left"><td> </td><td><input class="submit" type="submit" value="Login" /></td></tr>';
echo ' <tr><td colspan="2"> </td></tr>';
echo ' </table>';
echo '</fieldset>';
echo '</div>';
echo '</form>';
}
//Überprüfung der vom User eingegebenen Login Daten
function checkLogin() {
global $db;
$str_sql = 'SELECT u_id, bezeichnung, passwort, rechte FROM tbl_benutzerdaten';
$result = $db->select($str_sql,1);
$user = '';
$pwd = '';
if (isset($_REQUEST['user'])) {
$user = $_REQUEST['user'];
}
if (isset($_REQUEST['pwd'])) {
$pwd = ($_REQUEST['pwd']);
}
$break = 0;
foreach ($result as $row) {
$user_id = $row['u_id'];
$username = $row['bezeichnung'];
$passwort = $row['passwort'];
$rechte = $row['rechte'];
if ($user == $username && md5 ($pwd) == $passwort) {
$_SESSION['user_id'] = $user_id;
$_SESSION['username'] = $username;
$_SESSION['rechte'] = $rechte;
weiterleitung($rechte);
echo '<input type="hidden" name="user_id" value="'.$user_id.'" />';
$break = 1;
break;
}
}
if ($break == 0) {
echo '<div class="error">';
echo "ANMELDUNG FEHLGESCHLAGEN<br />Bitte versuchen Sie es nochmals";
echo '</div>';
showLogin();
}
}
function weiterleitung($rechte) {
$url1 = "http://www.contectum.com/zusatz/test/admin/index.php";
$url2 = "http://www.contectum.com/zusatz/test/user/index.php";
if ($rechte == 1) {
echo '<script language="javascript">window.location="'.$url1.'";</script>';
}
else {
echo '<script language="javascript">window.location="'.$url2.'";</script>';
}
}
Kommentar