PSD-Tutorials.de
Forum für Design, Fotografie & Bildbearbeitung
Tutkit
Agentur
Hilfe
Kontakt
Start
Forum
Aktuelles
Besonderer Inhalt
Foren durchsuchen
Tutorials
News
Anmelden
Kostenlos registrieren
Aktuelles
Suche
Suche
Nur Titel durchsuchen
Von:
Menü
Anmelden
Kostenlos registrieren
App installieren
Installieren
JavaScript ist deaktiviert. Für eine bessere Darstellung aktiviere bitte JavaScript in deinem Browser, bevor du fortfährst.
Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden.
Du solltest ein Upgrade durchführen oder einen
alternativen Browser
verwenden.
Antworten auf deine Fragen:
Neues Thema erstellen
Start
Forum
Sonstiges
Webdesign, Webentwicklung & Programmierung
PHP, Javascript, jQuery, Ajax, nodeJS, MySQL...
PHP-Login mit Templates, wie geht das?
Beitrag
<blockquote data-quote="RedDef" data-source="post: 1227870" data-attributes="member: 292360"><p>Hallo Leute</p><p></p><p>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.</p><p>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.</p><p>Das andere Problem welches ich nun habe ist, dass ich nicht recht begreife, was nun in das Template hinein muss und was nicht.</p><p></p><p>Mein Quellcode sieht folgendermassen aus:</p><p>[php]</p><p><html></p><p><head></p><p><title>Unbenanntes Dokument</title></p><p><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></p><p></head></p><p></p><p><body></p><p><?php</p><p> if (getUserID($db)) {</p><p> return 'Sie sind bereits eingeloggt.';</p><p> }</p><p> $ret = array();</p><p> $ret['filename'] = 'login.tpl';</p><p> $ret['data'] = array();</p><p> if ('POST' == $_SERVER['REQUEST_METHOD']) {</p><p> if (!isset($_POST[{'Username'}, $_POST['Password'], $_POST['formaction'])) {</p><p> return INVALID_FORM;</p><p> }</p><p> if ((''==$Username = trim($_POST['Username'])) OR</p><p> (''==$Password = trim($_POST['Password']))) {</p><p> return EMPTY_FORM;</p><p> }</p><p> $sql = 'SELECT</p><p> ID</p><p> FROM</p><p> User</p><p> WHERE</p><p> Username = ?';</p><p> $stmt = $db->prepare($sql);</p><p> if (!$stmt) {</p><p> return $db->error;</p><p> }</p><p> $stmt->bind_param('s', $Username);</p><p> if (!$stmt->execute()) {</p><p> return $stmt->error;</p><p> }</p><p> $stmt->bind_result($UserID);</p><p> if (!$stmt->fetch()) {</p><p> return 'Es wurde kein Benutzer mit den angegebenen Namen gefunden.';</p><p> }</p><p> $stmt->close();</p><p> $sql = 'SELECT</p><p> Password</p><p> FROM</p><p> User</p><p> WHERE</p><p> ID = ? AND</p><p> Password = ?';</p><p> $stmt = $db->prepare($sql);</p><p> if (!$stmt) {</p><p> return $db->error;</p><p> }</p><p> $Hash = md5(md5($UserID).$Password);</p><p> $stmt->bind_param('is', $UserID, $Hash);</p><p> if (!$stmt->execute()) {</p><p> return $stmt->error;</p><p> }</p><p> $stmt->bind_result($Hash);</p><p> if (!$stmt->fetch()) {</p><p> return 'Das eingegebene Passwort ist ungültig.';</p><p> }</p><p> $stmt->close();</p><p> setcookie('UserID', $UserID, strtotime("+1 month"));</p><p> setcookie('Password', $Hash, strtotime("+1 month"));</p><p> $_COOKIE['UserID'] = $UserID;</p><p> $_COOKIE['Password'] = $Hash;</p><p> return showInfo('Sie sind un eingeloggt.');</p><p> function getUserId($db) {</p><p> if(!is_object($db)) {</p><p> return false;</p><p> }</p><p> if (!($db instanceof MYSQLi)) {</p><p> return false;</p><p> }</p><p> if (!isset($_COOKIE['UserID'], $_COOKIE['Password'])) {</p><p> return false;</p><p> }</p><p> $sql = 'SELECT</p><p> ID</p><p> FROM</p><p> User</p><p> WHERE</p><p> ID = ? AND</p><p> Password = ?';</p><p> $stmt = $db->prepare($sql);</p><p> if(!$stmt) {</p><p> return $db->error;</p><p> }</p><p> $stmt->bind_param('is', $_COOKIE['UserID'], $_COOKIE['Password']);</p><p> if (!$stmt->execute()) {</p><p> return $stmt->error;</p><p> }</p><p> $stmt->bind_result($UserID);</p><p> if (!$stmt->fetch()) {</p><p> return false;</p><p> }</p><p> return $UserID;</p><p> }</p><p> }</p><p>return $ret:</p><p>?></p><p></p><p><form action="index.php?section=login" methode="post"></p><p> <fieldset></p><p> <legend>Einloggen</legend></p><p> <label>Benutzername: <input type="text" name="Username" /></label></p><p> <label>Passwort: <input type"password" name="Password" /></label></p><p> <input type="submit" name="formaction" value="Einloggen" /></p><p> </fieldset></p><p></form></p><p></body></p><p></html></p><p>[/php]</p><p>Ich habe ihn nun so in einer Datei.</p><p>Um ihn in die Website einzubinden habe ich das Formular herausgenommen und in die Website eingefügt:</p><p>[php]</p><p>[...]</p><p><div id="login"></p><p><div id="sub-login"></p><p><form avtion="index.php?section=login" methode="post"></p><p> <fieldset></p><p> <legend style="font-size:15px;font-weight:bold;text-align:left;">Login</legend></p><p> <label style="text-align:center;">Benutzername: <input type="text" name="Username" /></label></p><p> <label style="text-align:center;">Passwort: <input type"password" name="Password" /></label></p><p> <input type="submit" name="formaction" value=" Einloggen " /></p><p> </fieldset></p><p></form></p><p></div></p><p>[...]</p><p>[/php]</p><p>wie muss ich nun vorgehen, damit der erwähnte PHP-Code auf das Formular zugreift? Wie muss ich was in einer externen Datei anlegen?</p><p></p><p>Ich hoffe ich habe mich verständlich ausgedrückt und hoffe auf hilfreiche Antworten. Vielen Dank schon im voraus für eure Hilfe.</p><p></p><p>RedDef</p></blockquote><p></p>
[QUOTE="RedDef, post: 1227870, member: 292360"] 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: [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> [/php] 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: [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> [...] [/php] 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 [/QUOTE]
Bilder bitte
hier hochladen
und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Zitate einfügen…
Authentifizierung
Wenn ▲ = 5, ▼ = 2 und ■ = 7, was ist ▲ × ▼ + ■?
Antworten
Start
Forum
Sonstiges
Webdesign, Webentwicklung & Programmierung
PHP, Javascript, jQuery, Ajax, nodeJS, MySQL...
PHP-Login mit Templates, wie geht das?
Oben