User nach Registrierung auf eine Seite weiterleiten

In diesem Forum kann man Fragen zur Programmierung stellen, die bei der Entwicklung von Mods für phpBB 3.0.x oder dem Modifizieren des eigenen Forums auftauchen.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
mps
Mitglied
Beiträge: 143
Registriert: 10.11.2013 21:02

User nach Registrierung auf eine Seite weiterleiten

Beitrag von mps »

Hallo zusammen,

ich würde es gerne einstellen, dass wenn ein User sich gerade per Mail bestätigt hat und unser Forum das nächste mal danach besucht, die Seite tour.php aufgerufen wird. Wie stelle ich das am besten an?

Vielen Dank.

Gruß,
mps
Benutzeravatar
HabNurNeFrage
Ehemaliges Teammitglied
Beiträge: 1627
Registriert: 17.01.2010 20:22
Wohnort: An der Ostsee
Kontaktdaten:

Re: User nach Registrierung auf eine Seite weiterleiten

Beitrag von HabNurNeFrage »

Hi,

ist diese tour.php eine eigenständige Seite oder ins phpbb Template eingebunden?

LG
| HomeStory.org - the friendly Community | Forum für alle Lebenslagen | <"}))}~ | Nicht nachmachen: Meine phpBB Spielereien |
var shoppen = geld.replace (/geld/g, 'bloedsinn'); if (geld < 1) { return home; };
mps
Mitglied
Beiträge: 143
Registriert: 10.11.2013 21:02

Re: User nach Registrierung auf eine Seite weiterleiten

Beitrag von mps »

Die Seite ist mit dieser Vorlage erstellt worden: https://wiki.phpbb.com/Deutsch:Vorlage_ ... ene_Seiten
Benutzeravatar
HabNurNeFrage
Ehemaliges Teammitglied
Beiträge: 1627
Registriert: 17.01.2010 20:22
Wohnort: An der Ostsee
Kontaktdaten:

Re: User nach Registrierung auf eine Seite weiterleiten

Beitrag von HabNurNeFrage »

.


//** EDIT => Grund: Ersetzung nun auch in diesem Beitrag korrigiert */


Hi,

öffne ./includes/functions.php

finde (Zeilen 3104 bis 3106)

Code: Alles auswählen

$redirect = request_var('redirect', "{$phpbb_root_path}index.$phpEx");
            $message = ($l_success) ? $l_success : $user->lang['LOGIN_REDIRECT'];
            $l_redirect = ($admin) ? $user->lang['PROCEED_TO_ACP'] : (($redirect === "{$phpbb_root_path}index.$phpEx" || $redirect === "index.$phpEx") ? $user->lang['RETURN_INDEX'] : $user->lang['RETURN_PAGE']); 
ersetze es durch

Code: Alles auswählen

    if($user->data['user_lastvisit'] == 0)
                    {
                        header('Location: ' . append_sid("{$phpbb_root_path}tour.$phpEx"));
                    }
                    else
                    {
                        $redirect = request_var('redirect', "{$phpbb_root_path}index.$phpEx");
                        $message = ($l_success) ? $l_success : $user->lang['LOGIN_REDIRECT'];
                        $l_redirect = ($admin) ? $user->lang['PROCEED_TO_ACP'] : (($redirect === "{$phpbb_root_path}index.$phpEx" || $redirect === "index.$phpEx") ? $user->lang['RETURN_INDEX'] : $user->lang['RETURN_PAGE']);
                    }
Ist ungetestet, sollte aber umleiten, wenn das Feld letzter Besuch in der Datenbank noch nicht befüllt ist.
Im Normalfall sollte das nur für Registrierte, die sich noch nie eingeloggt haben, so sein.

LG
| HomeStory.org - the friendly Community | Forum für alle Lebenslagen | <"}))}~ | Nicht nachmachen: Meine phpBB Spielereien |
var shoppen = geld.replace (/geld/g, 'bloedsinn'); if (geld < 1) { return home; };
mps
Mitglied
Beiträge: 143
Registriert: 10.11.2013 21:02

Re: User nach Registrierung auf eine Seite weiterleiten

Beitrag von mps »

Leider geht das ganze nicht. Ich glaube auch den Fehler gefunden zu haben. In deinem PHP-Code steht ja:

if($user->data['user_lastvisit'] == 0)

Jedoch steht in der Datenbank dann nicht 0 sondern nichts, also die Zelle ist leer. Wie sieht der Code dann aus. Einfach die Null weg?
Benutzeravatar
HabNurNeFrage
Ehemaliges Teammitglied
Beiträge: 1627
Registriert: 17.01.2010 20:22
Wohnort: An der Ostsee
Kontaktdaten:

Re: User nach Registrierung auf eine Seite weiterleiten

Beitrag von HabNurNeFrage »

Hi,

dann ersetze die 0 mal durch ''
oder if(!$user->data['user_lastvisit'])
oder if(empty($user->data['user_lastvisit']))

LG
| HomeStory.org - the friendly Community | Forum für alle Lebenslagen | <"}))}~ | Nicht nachmachen: Meine phpBB Spielereien |
var shoppen = geld.replace (/geld/g, 'bloedsinn'); if (geld < 1) { return home; };
mps
Mitglied
Beiträge: 143
Registriert: 10.11.2013 21:02

Re: User nach Registrierung auf eine Seite weiterleiten

Beitrag von mps »

Irgendwie funktioniert das ganze leider immer noch nicht... :(
Benutzeravatar
HabNurNeFrage
Ehemaliges Teammitglied
Beiträge: 1627
Registriert: 17.01.2010 20:22
Wohnort: An der Ostsee
Kontaktdaten:

Re: User nach Registrierung auf eine Seite weiterleiten

Beitrag von HabNurNeFrage »

Hi,

keinerlei Änderung oder Fehlerausgabe?

LG
| HomeStory.org - the friendly Community | Forum für alle Lebenslagen | <"}))}~ | Nicht nachmachen: Meine phpBB Spielereien |
var shoppen = geld.replace (/geld/g, 'bloedsinn'); if (geld < 1) { return home; };
mps
Mitglied
Beiträge: 143
Registriert: 10.11.2013 21:02

Re: User nach Registrierung auf eine Seite weiterleiten

Beitrag von mps »

Ich lande immer auf der index.php?sid=XXXXXXXXXXXXXXXXXXXXXXX
Benutzeravatar
HabNurNeFrage
Ehemaliges Teammitglied
Beiträge: 1627
Registriert: 17.01.2010 20:22
Wohnort: An der Ostsee
Kontaktdaten:

Re: User nach Registrierung auf eine Seite weiterleiten

Beitrag von HabNurNeFrage »

Hi,

und wie testest Du das?
PhpMyAdmin nebenbei auf und user_lastvisit vom Testuser immer wieder eine 0 rein, da das nämlich der Default-Value des Feldes ist?

Code: Alles auswählen

user_lastvisit	int	11	nein		unsigned	0
Die erste Abfrage nach 0 sollte die richtige sein.

Testuser ausloggen, 0 eintragen und erneut einloggen. Ggf noch TRUNCATE phpbb_sessions (loggt aber alle aus) :wink:

LG
| HomeStory.org - the friendly Community | Forum für alle Lebenslagen | <"}))}~ | Nicht nachmachen: Meine phpBB Spielereien |
var shoppen = geld.replace (/geld/g, 'bloedsinn'); if (geld < 1) { return home; };
Antworten

Zurück zu „[3.0.x] Mod Bastelstube“