Hallo Leute
Ich bin daran, mit php etwas grösseres zu programmieren. Ich will ein Login machen. Jetzt habe ich in den Foren gesehen, dass auf ein sehr gutes Tutorial ist. Ich habe die Anweisungen befolgt und den Code geschrieben.
Doch da ist noch die Rede von Templates. Ich habe mir auch das Tutorial dazu angeschaut und mich im Internet darüber informiert. Ich habe noch immer keine Ahnung wie das gehen soll. Ich arbeite mit dem Dreamweaver und weiss nicht wie ich die Datei anlegen muss, damit sie danach die Endung *.tpl hat.
Das andere Problem welches ich nun habe ist, dass ich nicht recht begreife, was nun in das Template hinein muss und was nicht.
Mein Quellcode sieht folgendermassen aus:
Ich habe ihn nun so in einer Datei.
Um ihn in die Website einzubinden habe ich das Formular herausgenommen und in die Website eingefügt:
wie muss ich nun vorgehen, damit der erwähnte PHP-Code auf das Formular zugreift? Wie muss ich was in einer externen Datei anlegen?
Ich hoffe ich habe mich verständlich ausgedrückt und hoffe auf hilfreiche Antworten. Vielen Dank schon im voraus für eure Hilfe.
RedDef
Ich bin daran, mit php etwas grösseres zu programmieren. Ich will ein Login machen. Jetzt habe ich in den Foren gesehen, dass auf ein sehr gutes Tutorial ist. Ich habe die Anweisungen befolgt und den Code geschrieben.
Doch da ist noch die Rede von Templates. Ich habe mir auch das Tutorial dazu angeschaut und mich im Internet darüber informiert. Ich habe noch immer keine Ahnung wie das gehen soll. Ich arbeite mit dem Dreamweaver und weiss nicht wie ich die Datei anlegen muss, damit sie danach die Endung *.tpl hat.
Das andere Problem welches ich nun habe ist, dass ich nicht recht begreife, was nun in das Template hinein muss und was nicht.
Mein Quellcode sieht folgendermassen aus:
PHP:
<html>
<head>
<title>Unbenanntes Dokument</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?php
if (getUserID($db)) {
return 'Sie sind bereits eingeloggt.';
}
$ret = array();
$ret['filename'] = 'login.tpl';
$ret['data'] = array();
if ('POST' == $_SERVER['REQUEST_METHOD']) {
if (!isset($_POST[{'Username'}, $_POST['Password'], $_POST['formaction'])) {
return INVALID_FORM;
}
if ((''==$Username = trim($_POST['Username'])) OR
(''==$Password = trim($_POST['Password']))) {
return EMPTY_FORM;
}
$sql = 'SELECT
ID
FROM
User
WHERE
Username = ?';
$stmt = $db->prepare($sql);
if (!$stmt) {
return $db->error;
}
$stmt->bind_param('s', $Username);
if (!$stmt->execute()) {
return $stmt->error;
}
$stmt->bind_result($UserID);
if (!$stmt->fetch()) {
return 'Es wurde kein Benutzer mit den angegebenen Namen gefunden.';
}
$stmt->close();
$sql = 'SELECT
Password
FROM
User
WHERE
ID = ? AND
Password = ?';
$stmt = $db->prepare($sql);
if (!$stmt) {
return $db->error;
}
$Hash = md5(md5($UserID).$Password);
$stmt->bind_param('is', $UserID, $Hash);
if (!$stmt->execute()) {
return $stmt->error;
}
$stmt->bind_result($Hash);
if (!$stmt->fetch()) {
return 'Das eingegebene Passwort ist ungültig.';
}
$stmt->close();
setcookie('UserID', $UserID, strtotime("+1 month"));
setcookie('Password', $Hash, strtotime("+1 month"));
$_COOKIE['UserID'] = $UserID;
$_COOKIE['Password'] = $Hash;
return showInfo('Sie sind un eingeloggt.');
function getUserId($db) {
if(!is_object($db)) {
return false;
}
if (!($db instanceof MYSQLi)) {
return false;
}
if (!isset($_COOKIE['UserID'], $_COOKIE['Password'])) {
return false;
}
$sql = 'SELECT
ID
FROM
User
WHERE
ID = ? AND
Password = ?';
$stmt = $db->prepare($sql);
if(!$stmt) {
return $db->error;
}
$stmt->bind_param('is', $_COOKIE['UserID'], $_COOKIE['Password']);
if (!$stmt->execute()) {
return $stmt->error;
}
$stmt->bind_result($UserID);
if (!$stmt->fetch()) {
return false;
}
return $UserID;
}
}
return $ret:
?>
<form action="index.php?section=login" methode="post">
<fieldset>
<legend>Einloggen</legend>
<label>Benutzername: <input type="text" name="Username" /></label>
<label>Passwort: <input type"password" name="Password" /></label>
<input type="submit" name="formaction" value="Einloggen" />
</fieldset>
</form>
</body>
</html>
Um ihn in die Website einzubinden habe ich das Formular herausgenommen und in die Website eingefügt:
PHP:
[...]
<div id="login">
<div id="sub-login">
<form avtion="index.php?section=login" methode="post">
<fieldset>
<legend style="font-size:15px;font-weight:bold;text-align:left;">Login</legend>
<label style="text-align:center;">Benutzername: <input type="text" name="Username" /></label>
<label style="text-align:center;">Passwort: <input type"password" name="Password" /></label>
<input type="submit" name="formaction" value=" Einloggen " />
</fieldset>
</form>
</div>
[...]
Ich hoffe ich habe mich verständlich ausgedrückt und hoffe auf hilfreiche Antworten. Vielen Dank schon im voraus für eure Hilfe.
RedDef
Zuletzt bearbeitet: