[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
Vorhandenes Frontend Login für phpBB nutzen - REDAXO Forum
Hallo,

Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.

Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
Interceptor
Beiträge: 17
Registriert: 18. Feb 2016, 10:47

Vorhandenes Frontend Login für phpBB nutzen

18. Feb 2016, 11:05

Hallo zusammen,

ich hoffe, hier ein paar kleine Tipps oder Stichworte zu bekommen, die mir beim modifizieren weiterhelfen.

Zuerst die Daten:
REDAXO: 4.6.1
PHP: 5.5.31
MySQL: 5.6.27

Ich nutze auf meiner Redaxoseite aktuell ein Frontend Login/Registerform um u.a eine Uploadfunktion für reg. Benutzer freizuschalten. Das ganze funktioniert per PHPSESSID. Neben dem normalen Login steht auch ein Frontend Facebook Login zur Verfügung (der auch direkt registriert). Das ganze würde ich gerne 1:1 so lassen.

Ein phpBB Forum habe ich nun in einem Unterordner installiert und per iframe eingebunden.

Meine Frage:
Wie bekomme ich nun am besten die User von der Redaxo Tabelle in die phpBB Tabelle? Geht das per Script? Sprich bei Registrierung über den Registerform soll automatisch im phpBB Forum der gleiche User angelegt werden (alternativ könnte natürlich auch phpBB die vorhandene Tabelle von Redaxo nutzen falls das möglich ist). Der Loginstatus soll natürlich auch übergeben werdem (PHPSESSID).

Im Idealfall klappt das ganze natürlich auch falls jemand erst aufs Forum klickt und dort die Login oder Register Funktion nutzt..

Aktuell wird dieser Login Code verwendet falls das relevant ist.
<!-- Login -->
<?php
if(!isset($_SESSION['benutzerid']) || empty($_SESSION['benutzerid'])){
?>

<div class="row bannerhomewrapper login">

<div class="large-6 columns bannerhome" align="center">

<input id="showlogin" class="button tiny" value="<?php echo $lang['LOGIN_BUTTON_INFO']; ?>"/>

</div>

<div class="large-6 columns bannerhome" align="center">

<input type="submit" onClick="logInWithFacebook()" class="button tiny" value="1-Click Facebook Login"/>

</div>

</div>

<div class="row bannerhomewrapper login" style="display: none" id="loginfelder">
<form data-abide action="#" method="post">

<div class="large-4 columns bannerhome">
<div class="name-field">
<input name="username" type="text" required pattern="[a-zA-Z]+" placeholder="<?php echo $lang['LOGIN_BENUTZERNAME']; ?>">
<small class="error"><?php echo $lang['LOGIN_ERR_PBENUTZERNAME']; ?></small>
</div>
</div>

<div class="large-4 columns bannerhome">
<div class="name-field">
<input name="passwort" type="password" required placeholder="<?php echo $lang['LOGIN_PASSWORT']; ?>">
<small class="error"><?php echo $lang['LOGIN_ERR_PASSWORT']; ?></small>
</div>
</div>

<div class="large-4 columns bannerhome">
<input type="submit" class="button tiny" value="<?php echo $lang['LOGIN_BUTTON']; ?>"/>

<input name="login" value="1" type="hidden">

</form>

</div>

</div>

<div class="row bannerhomewrapper logininfo">

<div class="large-5 columns bannerhome">
<a href="#" data-reveal-id="myModal"><i class="fa fa-plus-square"></i><?php echo $lang['LOGIN_NOCHNICHTREGISTRIERT']; ?></a>
</div>

<div class="large-7 columns bannerhome">
<i class="fa fa-key"></i><a href="#" data-reveal-id="modalpwlost"><?php echo $lang['LOGIN_PWLOSTLINK'] ; ?></a>
</div>
</div>

<div class="row">
<div class="large-12 columns ">
&nbsp;
</div>
</div>
<? } ?>
<!-- ./ Login -->
Herzlichen Dank für Tipps und Hilfen.

VG Interceptor

Benutzeravatar
RexDude
Beiträge: 2543
Registriert: 22. Apr 2010, 11:24

Re: Vorhandenes Frontend Login für phpBB nutzen

18. Feb 2016, 11:16

Hi,
Wie bekomme ich nun am besten die User von der Redaxo Tabelle in die phpBB Tabelle? Geht das per Script? Sprich bei Registrierung über den Registerform soll automatisch im phpBB Forum der gleiche User angelegt werden (alternativ könnte natürlich auch phpBB die vorhandene Tabelle von Redaxo nutzen falls das möglich ist). Der Loginstatus soll natürlich auch übergeben werdem (PHPSESSID).
Nun du beantwortest dir die Frage eigentlich schon selber. Immer wenn du deinen Frontend User registrierst oder Updatest muss das gleiche auch syncron mit deiner phpbb Tabelle machen.

Interceptor
Beiträge: 17
Registriert: 18. Feb 2016, 10:47

Re: Vorhandenes Frontend Login für phpBB nutzen

18. Feb 2016, 11:36

Hi Rexdude,

danke schon einmal für deine Rückmeldung.

Genau da hakt es ja. Ich bin kein gelernter Programmierer und mache alles learning bei doing. Ich kannte bis vor 4 Monaten Redaxo noch gar nicht.

Ich habe im Internet viel gesucht aber nichts wirklich konkretes gefunden.

Gibt es dafür einen Codeschnipsel den ich mit etwas modifikation verwenden kann? Ich bin mir nicht sicher wie das einfach geschriebene umgesetzt wird...wie sage ich der Redaxo Datenbank denn dass Sie automatisch ein Duplikat in der zweiten Datenbank angelegt?

Mein "Profi" Programmierer, der mir die Seite geschrieben hat, steht leider aktuell nicht zur Verfügung. Daher muss ich mich hier mit Hilfe über das Internet durchfuchsen.

Vielen Dank :)

VG Interceptor

Benutzeravatar
anita
Beiträge: 711
Registriert: 25. Jan 2007, 10:25
Wohnort: Finsterwalde

Re: Vorhandenes Frontend Login für phpBB nutzen

22. Feb 2016, 12:12

hallo,

Dein obiger code beschreibt die login-Eingabemaske. Du musst an den code ran, der die DB-Verbindung enthält. Grob gesagt stelle ich mir vor, die logins von Redaxo und Forum zu vergleichen und diese zusammenzustricken.
Gruß Anita

javanita engineering, immer eine zündende Idee
http://www.javanita.com

Interceptor
Beiträge: 17
Registriert: 18. Feb 2016, 10:47

Re: Vorhandenes Frontend Login für phpBB nutzen

23. Feb 2016, 17:39

Hallo Anita,

die Ausgabe mit Anbindung an die DB für Login und Reg müsste folgende sein:
if($_POST['registrieren'] == "1"){
$_POST['registrieren'] = 0;
$db_table = "benutzer";
$sql_regsitrieren = new rex_sql;

$sql_regsitrieren->setQuery("INSERT INTO $db_table (sprache, mailKommentar, vorname, nachname, benutzername, email, passwort, strasse, plz, ort) VALUES ('". $_POST['sprache']."','1', '". $_POST['reg_vorname']."', '". $_POST['reg_nachname']."', '". $_POST['reg_benutzername']."', '". $_POST['reg_email']."', '". md5($_POST['reg_passwort'])."', '". $_POST['reg_strasse']."', '". $_POST['reg_plz']."', '". $_POST['reg_ort']."')");

$benutzer = $_POST["reg_benutzername"];
$pw = md5($_POST["reg_passwort"]);
$db_table = "benutzer";
$sql = new rex_sql;
$sql->debugsql = 0; //Ausgabe Query

$sql->setQuery("SELECT * FROM $db_table WHERE benutzername='$benutzer' AND passwort='$pw'");
for($i=0;$i<$sql->getRows();$i++)
{
$_SESSION['benutzerid'] = $sql->getValue("id");
$_SESSION['benutzername'] = $sql->getValue("benutzername");
$_SESSION['isAdmin'] = $sql->getValue("isAdmin");
}
}

if($_POST['login'] == "1"){
$_POST['login'] = 0;
$benutzer = $_POST["username"];
$pw = md5($_POST["passwort"]);
$db_table = "benutzer";
$sql = new rex_sql;
$sql->debugsql = 0; //Ausgabe Query

$sql->setQuery("SELECT * FROM $db_table WHERE benutzername='$benutzer' AND passwort='$pw'");
for($i=0;$i<$sql->getRows();$i++)
{
$_SESSION['benutzerid'] = $sql->getValue("id");
$_SESSION['benutzername'] = $sql->getValue("benutzername");
$_SESSION['isAdmin'] = $sql->getValue("isAdmin");
}
Ich müsste dort nun vermutlich die gleichen Variablen haben wie in phpBB bzw. umgekehrt oder?
Hilft der Code oben weiter so dass mir jemand konkret weiterhelfen kann?

Nebenbei: es ist 2 mal registrieren falsch geschrieben ($sql_regsitrieren = new rex_sql;) - ist das bewusst um einen Konflikt zu vermeiden? Oder können dadurch Fehler entstehen?

Vielen Dank fürs mitüberlegen :-)

robo
Beiträge: 106
Registriert: 17. Aug 2012, 09:03
Wohnort: Wien
Kontaktdaten: Website

Re: Vorhandenes Frontend Login für phpBB nutzen

23. Feb 2016, 18:01

Hallo.

@ Interceptor: Wenn ich das richtig verstanden habe, möchtest du auf eine "Redaxofremde" DB zugreifen und dort was lesen und schreiben...?
Wenn Ja:

In der master.inc.php (\redaxo\include\master.inc.php) gibt es ca. in Zeile 130 die Möglichkeit, eine weitere DB-Anbindung zu konfigurieren. Dann gibt es die Redaxo-Klasse(\redaxo\include\classes\class.rex_sql.inc) welche bei DB-Abfragen etc. sehr sehr hilfreich ist (aber mit der arbeitest du e schon). Da kann man dann auch auf eine andere DB switchen...

Hilfe und Infos dazu findest du u.a. hier:

http://www.redaxo.org/de/doku/tutorials ... t-rex_sql/
https://www.redaxo.org/de/wiki/index.ph ... LBeispiele
http://docs.rexdev.de/redaxo/en/4.5.0/c ... __sql.html

Hoffe das hilft etwas weiter... Ich denke da musst du durch...

Robert

Interceptor
Beiträge: 17
Registriert: 18. Feb 2016, 10:47

Re: Vorhandenes Frontend Login für phpBB nutzen

3. Mär 2016, 22:16

Ich krieg das einfach nicht hin :cry:

Kann mir hier jemand praktisch bei helfen? Am liebsten würde ich mein phpbb Forum wie hier auch auf meiner Seite einbauen und einfach die Optik des Forums an meine Redaxo-Seite anpassen...habs leider nur per iframe hinbekommen. Das mit den gleichen Logindaten funktioniert auch nicht.

Redaxo Grundseite mit einigen Programmierungen und mit Optik besteht. Forum phpbb ist installiert. Jetzt muss das ganze zusammenfinden. Denke dass es für einen "Profi" nur ein bisschen hin und her kopieren und Erfahrung ist.

Mein vorheriger Programmierer reagiert leider nur noch im 2-3 Wochentakt...hab schon soviel Geld dareingesteckt und trotzdem funktioniert es noch nicht so wie es soll. Liegt nun seit Monaten rum das Projekt und ich ärgere mich jeden Tag.

Wer nicht umsonst helfen würde, dem würde ich auch ne Kleinigkeit spendieren oder hier ein paar Euro an Redaxo spenden. Keine Unmengen - aber vielleicht ein kleiner Anreiz für jemanden der eh gerne an Seiten bastelt.

Würde mich freuen wenn jemand helfen kann.Gerne auch per PN melden. Würden dann die Daten und Login ausstauschen.

Viele Grüße
Interceptor

Benutzeravatar
anita
Beiträge: 711
Registriert: 25. Jan 2007, 10:25
Wohnort: Finsterwalde

Re: Vorhandenes Frontend Login für phpBB nutzen

7. Mär 2016, 12:26

hallo,

mit ein bisschen hin und her kopieren ist es garantiert nicht getan. Ich habe mich mit phpbb nicht beschäftigt. Wenn es objektorientiert ist, könntest Du auf die Klasse für das login und registrieren zugreifen. Wenn nicht schreib Dir eine eigene Klasse mit ganz normalem SQL, die auf die entsprechende DB-Tabelle von phpbb zugreift. Für die Anzeige des Forums im Redaxo-Template brauchst Du dann vielleicht ein entsprechendes Modul, das die Anzeige lädt oder s.ä. Da müsste man schon etwas tiefer einsteigen in die Programmierlogik von phpbb
Gruß Anita

javanita engineering, immer eine zündende Idee
http://www.javanita.com

Zurück zu „Allgemeines [R4]“