TE
TE
boss3D
Guest
Puh, okay ... bis zum fünften Code war ich noch dabei, dann hast du mich verloren ... aber der Reihe nach. Ich poste erstmal meine Codes, wie sie derzeit ausschauen (ich versuche ja jetzt, das ganze an dein System anzunähern). Natürlich funktioniert noch "nichts", weil ich jetzt, auch wegen der index.php, ehrlich gesagt keinen Plan mehr habe, wo (in welchen Files) ich jetzt das "session_start()" brauche. Und einige Verweise zwischen den Files klappen jetzt auch nicht mehr. Aber als erstes will ich mal das Registrieren/Einloggen richten, bevor ich mir dann im nächsten Schritt wieder projektzeiterfassung.php anschaue ...
index.php
login.php
registrieren.php
projektzeiterfassung.php
formular.php
Daneben gäb's noch auswerten.php, auswerten2.php und export.php, aber die lassen wir erstmal. Da muss dann irgendwann auch noch viel geändert werden.
-------------
So: Was mir nicht klar ist --> Was genau soll jetzt dein letzter Code sein? login.php? Dann sehe ich aber keinen gravierenden Unterschied im Aufbau zu meiner; du lässt ja auch die Buttons für Login und Registrieren drinnen, obwohl's letzteren in der login.php dann aber eigentlich gar nicht geben sollte wenn ich für die beiden Aufgaben wieder zwei Files mache.
Im Übrigen will ich den Admin-Namen selbst in die DB schreiben und dann im Code "test" dadurch ersetzen, bevor ich das Gesamtergebnis abliefere. Bei deiner Version könnte es ja passieren, dass die Leute hier, wenn sie nicht aufpassen, sich eventuell vor dem Admin registrieren und dann wäre ein MA als erster "0". Ich weiß ja nicht, wie die dann beim ersten Mal mit dem ganzen Zeug herumtun wenn ich weg bin.
index.php
PHP:
<?php
$login = false;
include('formular.php');
if (!isset($_SESSION['name'])) {
include('login.php');
$login = true;
} else {
include('projektzeiterfassung.php');
}
?>
PHP:
<?php
session_start();
$verbindung = mysql_connect("localhost", "root" , "root") or die ("Verbindung zur Datenbank konnte nicht hergestellt werden.");
mysql_select_db ("projektzeiterfassung") or die ("Datenbank konnte nicht ausgewählt werden.");
unset($_POST['btnReg']);
echo '<!doctype html>';
echo '<html><head><meta charset="ISO-8859-1">';
echo '<link rel="stylesheet" type="text/css" href="style.css">';
echo '<title>Projektzeiterfassung</title></head><body>';
echo '<br><div class="submit"><form action="login.php" method="post">';
echo '<br><h1>Projektzeiterfassung</h1>';
if (!isset($_POST['btnReg'])) {
echo '<table><th>Login</th></table>';
echo '<p>Ihr Username:</p>
<input type="text" size="24" maxlength="50" name="username"><br>';
echo '<p>Ihr Passwort:</p>
<input type="password" size="24" maxlength="50" name="password"><br><br>';
echo ' <input type="submit" name="btnLog" value="Einloggen"><br><br>
<input type="submit" name="btnReg" value="Registrieren">';
echo '</form></div><br>';
}
$salt = "#sf$!\"ä\"\$asd³s²a~§653 sa51d75qÖAa@üeX";
if (isset($_POST['btnLog'])) {
$username = $_POST['username'];
$erg = mysql_query("SELECT passwort FROM user WHERE name='".$username."'");
$row = mysql_fetch_object($erg);
$password = hash('sha512', ($_POST['password']).$salt);
if ($row->passwort == $password) {
$_SESSION['name'] = $username;
$_SESSION['id'] = $row->id;
$_SESSION['rechte'] = $row->rechte;
header('Location: http://localhost/db/projektzeiterfassung.php');
} else {
echo '<br><div class="submit"><form action="login.php">Benutzername und/oder Passwort waren falsch.<br><br><input type="submit" value="Login"></form></div>';
}
} elseif (isset($_POST['btnReg'])) {
echo '<table><th>Registrierung</th></table>
<p>Bitte geben Sie einen Usernamen ein:</p>
<input type="text" size="24" maxlength="50" name="username"><br>
<p>Bitte geben Sie ein Passwort ein:</p>
<input type="password" size="24" maxlength="50" name="passwort"><br>
<p>Passwort wiederholen:</p>
<input type="password" size="24" maxlength="50" name="passwort2"><br><br>
<input type="submit" name="btnReg" value="Registrieren">
</form></div>';
$username = $_POST['username'];
if (isset($_POST["passwort"]) and $_POST["passwort"] != "" and isset($_POST["passwort2"]) and $_POST["passwort2"] != "") {
$passwort = $_POST['passwort'];
$passwort2 = $_POST['passwort2'];
}
if ($username == "test") {
$rechte = 0;
} else {
$rechte = 1;
}
if ($passwort != $passwort2 or $username == "" or $passwort == "") {
echo '<br><div class="submit"><form action="login.php">Eingabefehler. Bitte alle Felder korrekt ausfüllen.<br><br><input type="submit" value="Zurück"></form></div>';
exit;
}
$passwort = hash('sha512', ($passwort).$salt);
$erg = mysql_query("SELECT id FROM user WHERE name='".$username."'");
$id = mysql_num_rows($erg);
if ($id == 0) {
$eintragen = mysql_query("INSERT INTO user (name, passwort, rechte) VALUES ('$username', '$passwort', '$rechte')");
if ($eintragen == true) {
echo '<br><div class="submit"><form action="login.php">Benutzer <b>'.$username.'</b> wurde erstellt.<br><br><input type="submit" value="Login"></form></div>';
} else {
echo '<br><div class="submit"><form action="login.php">Fehler beim Speichern des Benutzernamens.<br><br><input type="submit" value="Zurück"></form></div>';
}
} else {
echo '<br><div class="submit"><form action="login.php">Benutzername schon vorhanden.<br><br><input type="submit" value="Zurück"></form></div>';
}
}
echo '</body>
</html>';
?>
PHP:
<?php
// hier also den ganzen Registrier-Code aus login.php einfügen?
?>
PHP:
<?php
session_start();
$verbindung = mysql_connect("localhost", "root" , "root") or die ("Verbindung zur Datenbank konnte nicht hergestellt werden");
mysql_select_db("projektzeiterfassung") or die ("Datenbank konnte nicht ausgewählt werden.");
if (isset($_SESSION['name']) and isset($_SESSION['id']) and isset($_SESSION['rechte'])) {
$user = $_SESSION['name'];
$userid = $_SESSION['id'];
$rechte = $_SESSION['rechte'];
}
$kw = date('W');
$jahr = date('Y');
$monat = date('m');
$wt = date('N');
$tag = date('j') - ($wt - 1);
$wochenanfang = mktime(12, 0, 0, $monat, $tag, $jahr);
$wochenende = mktime(12, 0, 0, $monat, ($tag + 6), $jahr);
if (isset($_POST['wa'])) {
$wochenanfang = $_POST['wa'];
}
if (isset($_POST['we'])) {
$wochenende = $_POST['we'];
}
if (isset($_POST['prevWeek'])) {
$wochenanfang -= 60 * 60 * 24 * 7;
$wochenende -= 60 * 60 * 24 * 7;
}
if (isset($_POST['nextWeek'])) {
$wochenanfang += 60 * 60 * 24 * 7;
$wochenende += 60 * 60 * 24 * 7;
}
$kw = date('W', $wochenanfang);
$jahr = date('Y', $wochenanfang);
$monat = date('n', $wochenanfang);
$tag = date('j', $wochenanfang);
echo '<!doctype html>
<html>
<head>
<meta charset="ISO-8859-1">
<link rel="stylesheet" type="text/css" href="style.css">
<title>Projektzeiterfassung</title>
</head>
<body>
<form action="formular.php" method="post">';
echo ' <link rel="stylesheet" type="text/css" href="style.css">';
echo ' <br><h1>Projektzeiterfassung: '.$user.'</h1>';
echo ' <table>';
echo ' <tr>';
echo ' <td colspan="10" class="head_cap">';
echo ' <table style="width:100%; border:none; background-color:#A9F5BC;"><tr>';
echo ' <td style="border:none" align="left"><input type="submit" value="<<" name="prevWeek" class="switch"></td>';
echo ' <td style="width:90%; border:none; text-align:center">';
if (date('Y', $wochenanfang) <> date('Y', $wochenende)) {
echo ' Kalenderwoche '.$kw.': '.date('j.m.', $wochenanfang).' - '.date('j.m.Y', $wochenende);
} else {
echo ' Kalenderwoche '.$kw.': '.date('j.m.Y', $wochenanfang).' - '.date('j.m.Y', $wochenende);
}
echo ' <input type="hidden" value="'.$wochenanfang.'" name="wa">';
echo ' <input type="hidden" value="'.$wochenende.'" name="we">';
echo ' </td>';
echo ' <td style="border:none" align="right"><input type="submit" value=">>" name="nextWeek" class="switch"></td>';
echo ' </tr></table>';
echo ' </td>';
echo ' </tr>';
echo ' <tr>
<th>Tätigkeit</th>
<th>Produkt</th>
<th>Beschreibung</th>
<th width="150">MO <input name="mo" type="text" size="10" maxlength="10"></th>
<th width="150">DI <input name="di" type="text" size="10" maxlength="10"></th>
<th width="150">MI <input name="mi" type="text" size="10" maxlength="10"></th>
<th width="150">DO <input name="do" type="text" size="10" maxlength="10"></th>
<th width="150">FR <input name="fr" type="text" size="10" maxlength="10"></th>
<th width="150">SA <input name="sa" type="text" size="10" maxlength="10"></th>
<th width="150">SO <input name="so" type="text" size="10" maxlength="10"></th>
</tr>';
$taetigkeiten = array();
$sql_t = "SELECT * FROM taetigkeiten;";
$res_t = mysql_query($sql_t) or die ("Get Taetigkeiten failed.<br>".mysql_error());
if (mysql_num_rows($res_t))
while ($row_t = mysql_fetch_assoc($res_t)) {
$taetigkeiten[count($taetigkeiten)] = $row_t;
}
$products = array();
$sql_p = "SELECT * FROM produkte;";
$res_p = mysql_query($sql_p) or die ("Get Produkte failed.<br>".mysql_error());
if (mysql_num_rows($res_p))
while ($row_p = mysql_fetch_assoc($res_p)) {
$products[count($products)] = $row_p;
}
if( isset($_GET['add'])) {
$add = $_GET['add'];
$add++;
} elseif (!isset($_GET['rem'])) {
$add = 1;
}
if ( isset($_GET['rem'])) {
$add = $_GET['rem'];
$add--;
}
for ($a = 1; $a <= $add; $a++) {
echo '<tr><td><select name="taetigkeit'.$a.'">';
foreach ($taetigkeiten as $taetigkeit) {
echo '<option value="'.$taetigkeit['taetigkeit'].'">'.$taetigkeit['taetigkeit'].'</option>';
}
echo '</select></td>';
echo '<td><select name="product'.$a.'">';
foreach ($products as $product) {
echo '<option value="'.$product['produkt'].'">'.$product['produkt'].'</option>';
}
echo '</select></td>';
echo '<td><input name="beschreibung'.$a.'" type="text" size="50" maxlength="250"></td>';
echo '<td><input name="montag'.$a.'" type="text" size="10" maxlength="5""></td>';
echo '<td><input name="dienstag'.$a.'" type="text" size="10" maxlength="5"></td>';
echo '<td><input name="mittwoch'.$a.'" type="text" size="10" maxlength="5"></td>';
echo '<td><input name="donnerstag'.$a.'" type="text" size="10" maxlength="5"></td>';
echo '<td><input name="freitag'.$a.'" type="text" size="10" maxlength="5"></td>';
echo '<td><input name="samstag'.$a.'" type="text" size="10" maxlength="5"></td>';
echo '<td><input name="sonntag'.$a.'" type="text" size="10" maxlength="5"></td></tr>';
}
echo '</table><br>';
echo '<div class="submit"><button name="add" type="button" value="Zeile hinzufügen" onclick="window.location.href=\'projektzeiterfassung.php?add='.$add.'\';">Neue Eingabezeile hinzufügen</button> <button name="rem" type="button" value="Zeile entfernen" onclick="window.location.href=\'projektzeiterfassung.php?rem='.$add.'\';">Eingabezeile entfernen</button></div><br>';
echo '<input type="hidden" name="add" value="'.$add.'">';
echo '<div class="submit"><input type="submit" name="confirm" value="Bestätigen"> Schreibt Einträge in Datenbank ...</div>';
echo '</form>';
echo '<div class="submit"><br><br><br><form action="auswerten.php"><input type="submit" value="Bisherige Einträge in Datenbank anzeigen"> Eigene Einträge anzeigen ...</form>';
if ($rechte == 0) {
echo '<br><form action="auswerten2.php"><input type="submit" value="Einträge für folgenden Mitarbeiter anzeigen"> <input name="mitarbeiterdb" type="text" size="30" maxlength="30"></form></div>';
} else {
echo '</div>';
}
echo '</body>';
echo '</html>';
?>
PHP:
<?php
session_start();
$verbindung = mysql_connect("localhost", "root" , "root") or die ("Verbindung zur Datenbank konnte nicht hergestellt werden");
mysql_select_db("projektzeiterfassung") or die ("Datenbank konnte nicht ausgewählt werden.");
if (isset($_SESSION['name']) and isset($_SESSION['id'])) {
$user = $_SESSION['name'];
$userid = $_SESSION['id'];
}
$erstellt = date('Y-m-d-h-i-s');
$add = $_POST['add'];
for ($a = 1; $a <= $add; $a++) {
$taetigkeit = $_POST['taetigkeit'.$a.''];
$produkt = $_POST['product'.$a.''];
$beschreibung = $_POST['beschreibung'.$a.''];
$erg2 = mysql_query("SELECT id FROM taetigkeiten WHERE taetigkeit='".$taetigkeit."'");
$erg3 = mysql_query("SELECT id FROM produkte WHERE produkt='".$produkt."'");
$row2 = mysql_fetch_object($erg2);
$taetigkeitid = $row2->id;
$row3 = mysql_fetch_object($erg3);
$produktid = $row3->id;
$stunden = array("montag".$a."", "dienstag".$a."", "mittwoch".$a."", "donnerstag".$a."", "freitag".$a."", "samstag".$a."", "sonntag".$a."");
$data = array("mo", "di", "mi", "do", "fr", "sa", "so");
$eintragen1 = mysql_query("INSERT INTO projekte (taetigkeit, produkt, userid, beschreibung, erstellt) VALUES ('$taetigkeitid', '$produktid', '$userid', '$beschreibung', '$erstellt')");
$taetprodid = mysql_insert_id();
for ($b = 0; $b < 7; $b++) {
if (isset($_POST[$stunden[$b]]) and $_POST[$stunden[$b]] != "" and isset($_POST[$data[$b]]) and $_POST[$data[$b]] != "") {
$dauer = $_POST[$stunden[$b]];
$tag = $_POST[$data[$b]];
$eintragen2 = mysql_query("INSERT INTO zeiten (userid, taetprodid, zeit, datum) VALUES ('$userid', '$taetprodid', '$dauer', '$tag')");
}
}
}
?>
-------------
So: Was mir nicht klar ist --> Was genau soll jetzt dein letzter Code sein? login.php? Dann sehe ich aber keinen gravierenden Unterschied im Aufbau zu meiner; du lässt ja auch die Buttons für Login und Registrieren drinnen, obwohl's letzteren in der login.php dann aber eigentlich gar nicht geben sollte wenn ich für die beiden Aufgaben wieder zwei Files mache.
Im Übrigen will ich den Admin-Namen selbst in die DB schreiben und dann im Code "test" dadurch ersetzen, bevor ich das Gesamtergebnis abliefere. Bei deiner Version könnte es ja passieren, dass die Leute hier, wenn sie nicht aufpassen, sich eventuell vor dem Admin registrieren und dann wäre ein MA als erster "0". Ich weiß ja nicht, wie die dann beim ersten Mal mit dem ganzen Zeug herumtun wenn ich weg bin.
Zuletzt bearbeitet:








