Hallo, Gast! (Registrieren)

Wir wünschen allen Besuchern frohe Ostern!

Letzte Ankündigung: MyBB 1.8.37 veröffentlicht (04.11.23)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Login mit externem Skript
#1
Huhu,

ich habe eine Frage bezüglich eines Logins mit einem externen Skript. Damit meine ich aber nicht, dass ich von extern ein Skript von MyBBoard aufrufen möchte (oder vll doch?).

Ich habe bereits eine fertige, selbst erstellte Seite. Falls sich dort eingeloggt wird, hätte ich gerne, dass man auch direkt im Forum online ist.

Der erste Schritt wird es wohl sein, die Benutzer aus der jetzigen Datenbank in die von MyBB zu bekommen. Dabei werden die Passwörter aber unterschiedlich gehasht, sodass ich das wohl nicht so einfach hinbekommen werde und ein Skript brauche, was beim nächsten Login des Users das Password passend für MyBB hasht und in dessen Datenbank schreibt, oder?

Die nächste Frage wäre dann, wie ich eine aktive Session in MyBB erzeugen kann? Reicht ein einfacher Eintrag in der sessions-Tabelle der Datenbank, oder muss zusätzlich ein Cookie gesetzt werden? Falls ja, mit welchen Werten?

Die Seite ist auf Grundlage von CakePHP programmiert und folgender Codeabschnitt regelt den Login:

PHP-Code:
function login() {
        if(
$this->Auth->user()) {
            
$id $this->Auth->user('id');
            
$this->User->id $id;
            
$this->User->saveField('lastlogin'date('Y-m-d H:i:s'));
            
$this->redirect("/".$this->Session->read("lastPageVisited"));
        }
        else {
            
$this->Session->setFlash("Falsche Logindaten! Bitte erneut versuchen");
        }
    } 

Bringt wohl nicht viel, aber vll hilft es jemanden. Hier müsste sich dann die Aktion abspielen.

Hoffe mir kann man überhaupt noch helfen Smile

LG
JudGer
Zitieren
#2
Warum schaust du dir nicht den MyBB-Login an? Da stehen alle Queries, Cookies und Funktionen (allerdings über mehrere Dateien verteilt): https://crossreference.mybb.de
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#3
Hey,

ich lese mich momentan etwas in den Code ein, aber es ist recht komplex und dauert daher etwas länger.

Es gibt ja die Funktion, dass sich der Login gemerkt wird. Wo finde ich im Code denn die Stelle, wo geprüft wird, ob noch ein alter Login vorhanden ist? Da würde es ja sicherlich reichen nur ein Cookie zu setzen? Oder muss dafür auch ein Eintrag in der Sessions-Tabelle vorhanden sein? Sry, finde die Stelle im Code leider überhaupt nicht Sad

Gruß
JudGer
Zitieren
#4
Der Login-Code beginnt ab zeile 958 in der member.php.

inc/functions_user.php
inc/functions_post.php
global.php
inc/datahandlers/user.php
inc/functions_online.php
inc/functions_time.php
inc/class_parser.php

Dies sind die Dateien, die included werden. Durch diese musst du dich allerdings selber durchwühlen. ;-)
Zitieren
#5
Deshalb Crossreference. Wink Viele Zeilen hat die Funktion nicht. Ob man eingeloggt ist, wird in der inc/class_session.php geprüft.
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
Shocked Spambots aussperren mit diesem Skript? happyspeedy 7 2.708 08.01.2013, 14:41
Letzter Beitrag: happyspeedy
  Login Problem bei externem Login Waluigi 4 1.746 24.10.2009, 11:56
Letzter Beitrag: Waluigi
  Neuen Thread über externes Skript erstellen sevildevil 4 2.450 18.11.2008, 17:30
Letzter Beitrag: sevildevil
  wtcbb --> mybb convert skript... Hahh 3 1.653 30.07.2007, 13:52
Letzter Beitrag: Hahh
  Kalender als Skript auf externer Seite Raik 0 1.089 18.03.2007, 00:56
Letzter Beitrag: Raik