Need Help: 18er Mod für's Forum

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Acid
Ehrenadmin
Beiträge: 12195
Registriert: 26.04.2001 02:00
Wohnort: Berlin

Beitrag von Acid »

Acid hat geschrieben:Na woran hapert´s denn? Du willst, sobald man sich bei der 18er verifiziert hat, eine Seite mit ´ner Meldung und Link kommt... der Link schickt dann nach Betätigung eine PN an dich!?
:roll:
Benutzeravatar
mr. gamesbay
Mitglied
Beiträge: 313
Registriert: 13.01.2003 10:08
Wohnort: Meran

Beitrag von mr. gamesbay »

Acid hat geschrieben: :roll:
Und nun ? :roll: ;)
Acid
Ehrenadmin
Beiträge: 12195
Registriert: 26.04.2001 02:00
Wohnort: Berlin

Beitrag von Acid »

Acid hat geschrieben:Du willst, sobald man sich bei der 18er verifiziert hat, eine Seite mit ´ner Meldung und Link kommt... der Link schickt dann nach Betätigung eine PN an dich!?
:o
Benutzeravatar
mr. gamesbay
Mitglied
Beiträge: 313
Registriert: 13.01.2003 10:08
Wohnort: Meran

Beitrag von mr. gamesbay »

Acid hat geschrieben:
Acid hat geschrieben:Du willst, sobald man sich bei der 18er verifiziert hat, eine Seite mit ´ner Meldung und Link kommt... der Link schickt dann nach Betätigung eine PN an dich!?
:o
Achso :oops:
Ja, genau des möchte ich :)
Acid
Ehrenadmin
Beiträge: 12195
Registriert: 26.04.2001 02:00
Wohnort: Berlin

Beitrag von Acid »

18erconfig.php
++FINDE++

Code: Alles auswählen

// Zugang gewährt
$Okay = "Danke, es funzt. Du bist 18, oder älter";
++MIT FOLGENDEM ERSETZEN++

Code: Alles auswählen

$verified = 'Text, der erscheinen soll, wenn Link betätigt wurde.';
$pm_subject = 'Titel der PN';
$pm_text = 'Text der PN';

// Zugang gewährt
$Okay = 'Danke, es funzt. Du bist 18, oder älter.<br /> Klicke %shier%s um gedingst zu werden.';
perso.php
++FINDE++

Code: Alles auswählen

$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
++MIT FOLGENDEM ERSETZEN++

Code: Alles auswählen

include($phpbb_root_path . '18erconfig.'.$phpEx);

$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);

if( isset($HTTP_POST_VARS['mode']) || isset($HTTP_GET_VARS['mode']) )
{
	$mode = ( isset($HTTP_POST_VARS['mode']) ) ? $HTTP_POST_VARS['mode'] : $HTTP_GET_VARS['mode'];
}
else
{
	$mode = "";
}
++FINDE++

Code: Alles auswählen

include($phpbb_root_path . 'includes/page_header.'.$phpEx);
++DARUNTER EINFÜGEN (vor ?>)++

Code: Alles auswählen

if( !empty($mode) )
{
        switch($mode)
        {
        case 'verify':
                $id_sender = $userdata['user_id']; // id des Senders
                $id_resv =  '2'; // id des Empfaengers (z.B. Admin)
                $msg_time = time();
                $ip_resv = $userdata['session_ip']; // IP des Senders
                $pm_subject = $pm_subject;
                $pm_text = $pm_text;

                $sql = "INSERT INTO ". PRIVMSGS_TABLE ." (privmsgs_type, privmsgs_subject, privmsgs_from_userid, privmsgs_to_userid, privmsgs_date, privmsgs_ip, privmsgs_enable_html, privmsgs_enable_bbcode, privmsgs_enable_smilies, privmsgs_attach_sig)
                           VALUES (". PRIVMSGS_NEW_MAIL .", '". str_replace("\'", "''", $pm_subject) ."', '$id_sender', '$id_resv', '$msg_time', '$ip_resv', 1, 1, 1, 0)";
                if ( !($result = $db->sql_query($sql, BEGIN_TRANSACTION)) )
                {
                        message_die(GENERAL_ERROR, "Could not insert/update private message sent info.", "", __LINE__, __FILE__, $sql);
                }

                $privmsg_sent_id = $db->sql_nextid();
                $sql = "INSERT INTO ". PRIVMSGS_TEXT_TABLE ." (privmsgs_text_id, privmsgs_bbcode_uid, privmsgs_text)
                           VALUES ($privmsg_sent_id, '". $bbcode_uid ."', '". str_replace("\'", "''", addslashes($pm_text)) ."')";
                if ( !$db->sql_query($sql, END_TRANSACTION) )
                {
                        message_die(GENERAL_ERROR, "Could not insert/update private message sent text.", "", __LINE__, __FILE__, $sql);
                }

                $sql = "UPDATE ". USERS_TABLE ." SET user_new_privmsg = user_new_privmsg + 1, user_last_privmsg = $msg_time
                           WHERE user_id = ". $id_resv;
                if ( !$status = $db->sql_query($sql) )
                {
                        message_die(GENERAL_ERROR, 'Could not update private message new/read status for user.', '', __LINE__, __FILE__, $sql);
                }

                $message = $verified;
                message_die(GENERAL_MESSAGE, $message); 
                break;

        default:
                message_die(GENERAL_MESSAGE, $lang['No_mode']);
                break;
        }
        exit;
}
++FINDE und LÖSCHE++

Code: Alles auswählen

include("18erconfig.php");
++FINDE++

Code: Alles auswählen

print ($Okay);
++MIT FOLGENDEM ERSETZEN++

Code: Alles auswählen

print (sprintf($Okay, '<a href="'. append_sid("perso.$phpEx?mode=verify") .'">', '</a>'));
Benutzeravatar
mr. gamesbay
Mitglied
Beiträge: 313
Registriert: 13.01.2003 10:08
Wohnort: Meran

Beitrag von mr. gamesbay »

Vielen Dank!! :)

Es funzt!! :)
Benutzeravatar
mr. gamesbay
Mitglied
Beiträge: 313
Registriert: 13.01.2003 10:08
Wohnort: Meran

Beitrag von mr. gamesbay »

Leider habe ich eben Festellen müssen, das wenn man:
http://www.forum.de/phpbb/perso.php?mode=verify
in die Adressenzeile eingibt, kann man die Abfrage umgehen, aber ne PN bekomme ich trotzdem :(
Acid
Ehrenadmin
Beiträge: 12195
Registriert: 26.04.2001 02:00
Wohnort: Berlin

Beitrag von Acid »

yo.. des Problem is, das bei der Überprüfung nix gespeichert wird. Also kann auch nix abgefragt werden, das erfüllt sein muss, bevor man den Link betätigen kann. Mir fällt da im Moment nix ein, ausser das du nach der Überprüfung automatisch ein neues Feld in der "users" Tabelle aktualisieren lässt, das man dann abfragen könnte.

Fällt dir was anderes ein?
Benutzeravatar
mr. gamesbay
Mitglied
Beiträge: 313
Registriert: 13.01.2003 10:08
Wohnort: Meran

Beitrag von mr. gamesbay »

Acid hat geschrieben:yo.. des Problem is, das bei der Überprüfung nix gespeichert wird. Also kann auch nix abgefragt werden, das erfüllt sein muss, bevor man den Link betätigen kann. Mir fällt da im Moment nix ein, ausser das du nach der Überprüfung automatisch ein neues Feld in der "users" Tabelle aktualisieren lässt, das man dann abfragen könnte.

Fällt dir was anderes ein?
Leider nein, oder könnte man da was mit nem Cookie machen ?!

Wie einfach lässt sich des mit der User abfrage realisieren ?
Acid
Ehrenadmin
Beiträge: 12195
Registriert: 26.04.2001 02:00
Wohnort: Berlin

Beitrag von Acid »

Schick mir mal ´ne PM, damit ich es nicht vergesse. Ich sag´s dir morgen oder übermorgen (is recht simpel).
Antworten

Zurück zu „phpBB 2.0: Mod Support“