ERLEDIGT
NEIN
NEIN
ANTWORTEN
7
7
ZUGRIFFE
282
282
EMPFEHLEN
-
29.01.12 14:39 #1
Tag All,
bin gerade dabei ein Login zu erstellen der mir ermöglicht, dass ich meine Login-Daten auf Seite A eintragen und der soll mich auf Seite B anmelden. Wie kann man das realisieren, stehe gerade voll auf dem schlauch:
Hier mein Login:
Gruß arraybreakPHP-Code:<fieldset id="signin_menu">
<form method="post" target="_blank" id="form-login" action="http://www.seite-b.de">
<label for="username">E-Mail</label>
<input id="username" name="username" value="" title="username" tabindex="4" type="text">
</p>
<p>
<label for="password">Passwort</label>
<input id="password" name="password" value="" title="password" tabindex="5" type="password">
</p>
<p class="remember">
<input id="signin_submit" value="Anmelden" tabindex="6" type="submit">
<input id="remember" name="remember_me" value="1" tabindex="7" type="checkbox">
<label for="remember">Eingeloggt bleiben</label>
</p>
</form>
</fieldset>
-
Wo ist denn nun das Problem? Am Formular sollte es nicht liegen.
Was hast du auf Seite B schon programmiert? Eine Datenbankabfrage...?
-
29.01.12 16:57 #3So sieht der Login aus von der zweiten seiten (B), die stammt nicht von mir und ich weiß nicht wie es da abläuft. Ich möchte einfach auf seite A mich anmelden und es an seite B weiterleiten aber es klapt einfach nichtPHP-Code:
<div id="popups_container" class="clearfix">
<div id="popup_login">
<form action="/index.php?Itemid=72" method="post" name="form-login" id="form-login" >
<ul class="loginposition">
<li id="form-login-login">
<label for="modlgn_username">Benutzername</label>
<input id="modlgn_username" type="text" name="username" class="inputbox" alt="username" size="15" />
</li>
<li id="form-login-pass">
<label for="modlgn_passwd">Passwort</label>
<input id="modlgn_passwd" type="password" name="passwd" class="inputbox" size="15" alt="password" />
</li>
<li id="form-login-button">
<input type="submit" name="Submit" class="button" value="Anmeldung" />
</li>
</ul>
<ul class="loginposition clearfix">
<li id="form-login-remember">
<input id="modlgn_remember" type="radio" name="remember" class="inputbox" value="yes" alt="Remember Me" />
<label for="modlgn_remember">Angemeldet bleiben</label>
</li>
<li id="form-login-fpass">
<a href="/index.php?option=com_user&view=reset">
Passwort vergessen?</a>
</li>
<li id="form-login-flogin"> <a href="/index.php?option=com_user&view=remind">
Benutzername vergessen?</a></li>
<li id="form-login-register">
<a href="/index.php?option=com_user&task=register">
Registrieren</a>
</li>
</ul>
<input type="hidden" name="option" value="com_user" />
<input type="hidden" name="task" value="login" />
<input type="hidden" name="return" value="L2luZGV4LnBocD9vcHRpb249Y29tX2NvbnRlbnQmdmlldz1hcnRpY2xlJmlkPTg2Jkl0ZW1pZD03Mg==" />
<input type="hidden" name="5079828044f0bb6174a00d5032900b5a" value="1" /></form>
</div>
-
Bevor ich anfange, dir hier etwas zu coden, ein paar Fragen:
- du liest die Benutzer aus einer Datenbank aus, oder?
- hast du Ahnung von Sessions?
- hast du überhaupt Ahnung davon, wie ein Login funktionieren sollte?
-
29.01.12 17:31 #5
Ja die Benutzer werden aus einer Datenbank ausgelesen, von Sessions habe ich leider keine Ahnung, und die Frage wie es genau funktionieren sollte verstehe ich nicht ganz
-
Ok, gut dann fangen wir mal an...
Du bastelst dir eine Seite, z.B. login.html ... dort muss der Inhalt rein, den du oben hattest, mit folgenden Änderungen:
(Info: Zu "Angemeldet bleiben" weiß ich nicht, wie es funktioniert. Ich weiß nur, dass man das normal über Cookies regelt, hab mich aber noch nie ausführlich damit beschäftigt... das ist aber vorerst unwichtig!)PHP-Code:<form method="post" target="_blank" id="form-login" action="login.php">
<label for="username">E-Mail</label>
<input id="username" name="username" title="username" tabindex="4" type="text">
</p>
<p>
<label for="password">Passwort</label>
<input id="password" name="password" title="password" tabindex="5" type="password">
</p>
<p class="remember">
<input id="signin_submit" value="Anmelden" tabindex="6" type="submit">
<input id="remember" name="remember_me" value="1" tabindex="7" type="checkbox">
<label for="remember">Eingeloggt bleiben</label>
</p>
</form>
</fieldset>
So anschließend bauen wir uns eine kleine login.php, welche den Login bearbeitet!
Ich bin davon ausgegangen, dass du eine md5-Verschlüsselung für Passwörter benutzt, in der Datenbank. Das Feld für den Benutzernamen heißt hier "email".PHP-Code:<?php
DEFINE('SQL_HOST','localhost');
DEFINE('SQL_USER','hierdeinbenutzer');
DEFINE('SQL_PASS','hierdeinpasswort');
DEFINE('SQL_DB','hierdeinedatenbank');
$sql = mysql_connect(SQL_HOST, SQL_USER, SQL_PASS);
mysql_select_db(SQL_DB);
//Datenbankvariablen angelegt und Verbindung zur Datenbank aufgebaut!
//Nun kümmern wir uns um einen Datenabgleich zw. Datenbank und Formular!
$sqlCmd = "SELECT * FROM users WHERE email='".$_POST['username']."' AND password=md5('".$_POST['password']."')";
$sqlQry = mysql_query($sqlCmd, $sql);
if(mysql_num_rows($sqlQry) > 0)
{
echo "Erfolgreich eingeloggt!";
} else {
echo "Die eingegebenen Daten sind falsch.";
}
?>
Bis zu diesem Punkt ist der Benutzer nun nur für diese Seite eingeloggt. Einen dauerhaften Login muss man erweitern, indem man mit Sessions arbeitet. Dazu würde ich dich zu Google bzw. in den Tutorial-Bereich schicken!
Ich hoffe, es ist ein wenig verständlich!
-
30.01.12 00:30 #7
erstmal vielen Dank für die Ausführliche Hilfe, ich werde es zwar ausprobieren aber irgend wie glaub ich nicht das es klappen würde.
Soweit ich verstanden habe willst du die beiden Dateien "login.html" und "login.php" auf "Seite A" einbinden oder?
Wie soll den der LoginFormular von SeiteA mit deinem Code auf "Seite B" zugreifen?
Das Problem dabei ist es das diese zwei Seiten auf verschiedenen CMS laufen (SeiteA: Wordpress und SeiteB: Joomla)
Diese zwei Zeilen gehören zur SeiteB wo Joomla läuft und er will, wie ich das verstanden habe die Sessions haben, die ich allerdings mit meinem Formular auf SeiteA nicht erzeugen kann:
Ist total verwirrend, ich weiß, aber ohne Schweiß kein Preis oderPHP-Code:<input type="hidden" name="return" value="L2luZGV4LnBocD9vcHRpb249Y29tX2NvbnRlbnQmdmlldz1hcnRpY2xlJmlkPTg2Jkl0ZW1pZD03Mg==" />
<input type="hidden" name="5079828044f0bb6174a00d5032900b5a" value="1" />

Gruß arraybreak
-
Theoretisch müsstest du dazu vorerst ein paar Sachen heraussuchen:
1) Loginformular von Wordpress
2) Loginformular von Joomla, zum Datenabgleich!
Beim Joomla-Formular sollte zu sehen sein, an welche Seite das Formular weiterleitet. Entsprechend müsstest du das Formular von Wordpress anpassen...
Wie das mit den Sessions gehandhabt wird, bei Joomla, weiß ich leider nicht. Das CMS habe ich noch nie genauer verwendet, geschweige denn mich in den Code eingelesen...
Du könntest im Code von Joomla nachsehen, ob und vor allem WIE diese Tokens generiert werden oder - wenn du dich echt auskennst - löscht du die Relevanz dieses Tokens einfach aus dem Login raus..., also nicht dort wo er generiert wird, sondern da wo er "benötigt" wird...
Ähnliche Themen
-
Drucken einer anderen Seite
Von Steusi im Forum Javascript & AjaxAntworten: 9Letzter Beitrag: 15.01.12, 12:04 -
Am Ende einer if Schleife zu einer anderen Seite wechseln
Von peper im Forum PHPAntworten: 12Letzter Beitrag: 17.04.07, 01:21 -
Auf Anker einer anderen Seite verweisen
Von Jan-Frederik Stieler im Forum HTML & XHTMLAntworten: 1Letzter Beitrag: 18.11.06, 09:19 -
Teile einer HTML Seite automatisch auf einer anderen
Von slamka im Forum HTML & XHTMLAntworten: 5Letzter Beitrag: 04.06.06, 13:46 -
zu einer anderen Seite wechseln
Von thomson im Forum PHPAntworten: 13Letzter Beitrag: 17.06.04, 14:53





Zitieren

Login






[PHP][Snippet] Array zu XML konvertieren