ThWboard Support-Forum (Archiv)

Ort: / Boardübersicht / Code Hack Requests / Suche Hack: E-mail bei Anmeldung eines neuen Users


Seite 1 von 2 – nächste Seite >>

SvenH schrieb am 28.03.2002 um 13:25 Uhr

Ich suche einen Hack, der allen Administratoren des Forums eine E-Mail schickt, dass sich ein neuer User angemeldet hat.

Gibt es soetwas vielleicht schon? Oder ist es gar im ThWboard schon integriert und ich habe es bloß übersehen? :)

Blame schrieb am 02.04.2002 um 16:19 Uhr

In do_register.php ganz am Ende:

if( $config['use_email'] )
{
    $TRegistermail = new Template("./templates/mail/register.mail");
    eval($TRegistermail->GetTemplate("email"));
    @mail($register['useremail'], $config['board_name'] . " - Registrierung", $email, "From: $config[board_admin]");
    
    $TRegistermail = new Template("./templates/mail/new_user.mail");
    eval($TRegistermail->GetTemplate("email"));
    @mail("deine@email.de", "Neue Board-Registrierung", $email, "From: <$config[board_admin]>");

    message("Registrierung erfolgreich!", "Der neue User wurde angelegt.<br>Das Passwort wurde dir per Mail zugeschickt.");
}
else
{
    setcookie("thwb_cookie_userid", $register['userid'], (time() + 60 * 60 * 24 * 365));
    setcookie("thwb_cookie_userpassword", md5($register['userpassword']), (time() + 60 * 60 * 24 * 365));
    
    $TRegistermail = new Template("./templates/mail/new_user.mail");
    eval($TRegistermail->GetTemplate("email"));
    @mail("deine@email.de", "Neue Board-Registrierung", $email, "From: <$config[board_admin]>");
    
    message_redirect('Du wurdest soeben erfolgreich registriert und eingeloggt. Viel Spass!<br>Bitte warten, Du wirst weitergeleitet!', 'index.php');
 }

?>



---
In \templates\mail eine neue Datei "new_user.mail" anlegen, mit einem Text-Editor folgendes reinschreiben:

Es hat sich ein neuer Benutzer registriert:

Benutzername: $register[username]
eMail: $register[useremail]



Viel Spaß... Blame

Schnassel63 schrieb am 02.04.2002 um 17:56 Uhr

hi Blame,

ist schon interessant das Teil
aber ist es nicht möglich, das die e-mail (welche man per hand eintragen soll) ausgelesen wird aus dem Board zum Beispiel die Admin Adresse
wie schauts aus, lässt sich in der e-mail auch noch datum und uhrzeit integrieren, damit man sehen wann sich der user hat registriert

compact74 schrieb am 02.04.2002 um 18:11 Uhr

.. super ... eigentlich ja auch nicht schwierig zu installieren, aber bei mir geht das irgendwie nicht. Als Ergebniss passiert nichts, also es wird kein Mail veschickt!? Das einzigste was ich geändert aheb, ist, das ich meine Mailadresse eingeragen habe.

Narodnaja schrieb am 02.04.2002 um 18:13 Uhr

Ohne Garantie, aber gehört denn nicht das @ vor der Mailfunktion weg ?

compact74 schrieb am 02.04.2002 um 18:36 Uhr

@ Narodnaja
... ne, elider wars das nicht, funz immernoch nicht?!

Blame schrieb am 02.04.2002 um 20:33 Uhr

Tjaaa...
erstens:

Die Stelle im Code war wohl etwas falsch...

Ich habs oben geupdatet.

Zweitens: Liegt dein Board auf tripod.de? Das will im Moment offensichtlich nicht, bei mir geht auch gar nix, leider... Der Code ansich funzt aber, den hab ich heute morgen mehrmals erfolgreich getestet.

P.S.: @schnassel: Die eMail-Adresse kann nicht ausgelesen werden, weil das PHP-Skript nur auf dem Server ausgeführt wird und der User in seiner HTML-Seite nix davon mitbekommt.

Narodnaja schrieb am 02.04.2002 um 21:13 Uhr

öhm - naja das sollte ja der gag sein - es soll doch die mail an jeden Admin gehen, also die mail-function für jeden ausgeführt werden, der userlevel 1 hat, und zwar an seine registrierte emailadresse.

Hab leider keine Zeit, das selber zu schreiben, aber Denkansatz:

- alle mit Userlevel 1 auslesen und deren mailadressen in ein Array schreiben
- Anzahl der Arraywerte auslesen
- for ($i=0; $i<$anzahl; $i++) { @mail("$array[$i]", "Neue Board-Registrierung", $email, "From: <$config[board_admin]>"); }

oder so ...

Blame schrieb am 02.04.2002 um 21:18 Uhr

Na sowas... ich muss das "allen" übersehen haben *g*
Sorry... sowas hab ich leider nicht parat.

SvenH schrieb am 02.04.2002 um 23:08 Uhr

Vielen Dank für die Antworten! Werde es gleich mal ausprobieren. :)

mcdj schrieb am 02.04.2002 um 23:36 Uhr

Na Hallo !

Wollte noch eine Info hinterlassen !

Da tripod.de nur 150 Email pro/monat zulässt,wird es wohl nicht gehen,wenn user sich schon anmelden etz..die bekommen ja auch eine email!

Oder habe ich da was falsch gelesen :O)

Gruß Mcdj

compact74 schrieb am 03.04.2002 um 11:56 Uhr

... mein Board ist aud Purtec, nicht bei tripod.

Sorry, abe rbei mir funzt das immer noch nicht, ich erhalte Fehlermeldunge. Wäre es wohl möglich, dass ich dir meine do_register maile und du mir das einbauen kannst? Ich bin da nicht so bewandert.

Narodnaja schrieb am 03.04.2002 um 12:19 Uhr

mmm ich bin momentan knapp bei Zeit, aber heute ist es möglich, dass ich dazukomme, den Hack schnell zu schreiben. Kann aber nix versprechen :)

Narodnaja schrieb am 03.04.2002 um 13:06 Uhr

lol ich konnte doch nicht widerstehen. Also :

// Hack zur Benachrichtigung aller Admins über Neuanmeldungen //
// Verfasser: Narodnaja
//
// Geschrieben mit ThWBoard 2.72 PHP4-Version
//
// neue Dateien: templates/mail/new_user.mail
// zu ändernde Dateien: do_register.php

Schritt 1:
folgende Datei als templates/mail/new_user.mail erstellen:

Es hat sich ein neuer Benutzer im $config[board_name] registriert:

Benutzername: $register[username]
eMail: $register[useremail]

Registrierdatum: $registertime

Dieses Mitglied hat sich mit der IP $registerip ($registerhost) registriert. 



Schritt 2:
Folgenden Code in die do_register.php einfügen:

Ziemlich am Ende VOR

if( $config['use_email'] )
{
    $TRegistermail = new Template("./templates/mail/register.mail");
    eval($TRegistermail->GetTemplate("email")); 


das einfügen:

// Benachrichtigungshack bei Neuanmeldungen //
$r_getadminmail = thwb_query("SELECT useremail FROM ".$pref."user WHERE userlevel = '1'");
$registertime = date("d. m. Y, H:i",time())." Uhr";
$registerip = getenv ("REMOTE_ADDR");
$registerhost = gethostbyaddr ($registerip);
// Ende //



Dann NACH

@mail($register['useremail'], $config['board_name'] . " - Registrierung", $email, "From: $config[board_admin]");


das einfügen:

// Benachrichtigungshack bei Neuanmeldungen //    
    $TRegisteradminmail = new Template("./templates/mail/new_user.mail");
    eval($TRegisteradminmail->GetTemplate("regemail"));
    $r_getadminmail = thwb_query("SELECT useremail FROM ".$pref."user WHERE userlevel = '1'");
    while ($getadminmail = mysql_fetch_array ($r_getadminmail))
    {
    @mail($getadminmail['useremail'], "Neue Board-Registrierung", $regemail, "From: <$config[board_admin]>");
    }
// Ende //



und dann noch NACH

setcookie("thwb_cookie_userpassword", md5($register['userpassword']), (time() + 60 * 60 * 24 * 365));


folgendes:

// Benachrichtigungshack bei Neuanmeldungen  //    
    $TRegisteradminmail = new Template("./templates/mail/new_user.mail");
    eval($TRegisteradminmail->GetTemplate("regemail"));
    $r_getadminmail = thwb_query("SELECT useremail FROM ".$pref."user WHERE userlevel = '1'");
    while ($getadminmail = mysql_fetch_array ($r_getadminmail))
    {
    @mail($getadminmail['useremail'], "Neue Board-Registrierung", $regemail, "From: <$config[board_admin]>");
    }
// Ende //



das wars, bei mir hats funktioniert. Auf eigene Verantwortung, und ich habs nur mit aktivierter "use-email"-Funktion getestet. Es sollte aber bei deaktivierter use-email auch gehen, der Code is ja identisch.

Viel Spass :)

[EURdit]thnx @ Schnassel für Template-Vorschlag :)[/EURdit]

Schnassel63 schrieb am 03.04.2002 um 20:17 Uhr

super teil, thx
und funst ohne probleme

allerdings habe ich eine kleine änderung in der new_user.mail getätigt

Es hat sich ein neuer Benutzer
im $config[board_name] registriert:

Benutzername: $register[username]
eMail: $register[useremail]

Registrierdatum: $registertime

Dieses Mitglied hat sich mit der IP $registerip ($registerhost) registriert.



hier wird jetzt auch der Board-Name mit ausgegeben, ist interessant für Leute die in mehreren Foren Admins sind oder mehrere Foren betreiben

Ansonsten ist der HAck genau das was ich mir vorgestellt hatte, big THX Narodnaja

[EURdit]
getestet mit 2.73

Narodnaja schrieb am 03.04.2002 um 21:08 Uhr

fein =) und stimmt, das sollte man noch reinnehmen. An sowas denk ich net mit meinem einen Board *g*

darf ich das noch oben mit reineditieren ?

Schnassel63 schrieb am 03.04.2002 um 21:12 Uhr

sicher

Narodnaja schrieb am 03.04.2002 um 21:15 Uhr

danke =)

Schnassel63 schrieb am 03.04.2002 um 21:20 Uhr

nichts zu danken, wir haben zu danken

mcdj schrieb am 04.04.2002 um 01:05 Uhr

Dazu müsste noch eine PM begrüssung rein ! Willkommen $username
Viel spass im Board etz......... Ich denke,das würde dann perfekt sein

Gruß Mcdj

compact74 schrieb am 04.04.2002 um 14:51 Uhr

... ähh , ja genau, das mit der Begrüßungs PM wäre der Knaller schlechthin .. ghets das auch noch?

Narodnaja schrieb am 04.04.2002 um 18:48 Uhr

öhm da sitzt anscheinend Adrian schon dran, siehe Vorschläge-Forum. Aber für den Hack komm ich evtl dazu, das heute zu machen, sonst frühestens nach dem Wochenende. Ich kann nix versprechen :\

Schnassel63 schrieb am 05.04.2002 um 17:14 Uhr

schaut mal hier
http://www.thwboard.de/support/showtopic.php3?threadid=1667&time=1017953671

da ist der hack für die pm

Excalibur schrieb am 13.04.2002 um 13:00 Uhr

Hy ihr! Funzt es bei euch?
Also ich habe keine Fehlermeldung bekommen, wenn sich ein neuer angemeldet hat, soviel zum positiven! Allerding habe ich auch keine mail bekommen als er sich angemeldet hat...?
Bin kräftig am Fehlersuchen aber finde nix. Wo dran liegt es eher? an der new_user.mail oder do_register.php?

Carsten schrieb am 26.01.2003 um 18:01 Uhr

hi leute bei mir funzt des ned. hier meine do_register.php datei...vielleicht kann mir mal jemand eine schicken, die geht... admin@feuerwehr-mauloff.de danke

<?php
/* $Id: do_register.php,v 1.1.1.1 2002/10/28 19:13:46 pbaecher Exp $ */
/*
          ThWboard - PHP/MySQL Bulletin Board System
        ==============================================
            (c) 2000, 2001 by
               Paul Baecher         <paul@thewall.de>
               Felix Gonschorek   <funner@thewall.de>

          download the latest version:
            http://www.thwboard.de

          This  program is  free  software;  you can
          redistribute it and/or modify it under the
          terms of the GNU General Public License as
          published by the Free Software Foundation;
          either  version 2 of  the License,  or (at
          your option) any later version.

        ==============================================

*/

include "./inc/header.inc.php";

// http://www.securiteam.com/securitynews/5FP0C204KE.html
$register['username'] = $HTTP_POST_VARS['register']['username'];

$register['username'] = str_replace("\r", '', $register['username']);
$register['username'] = str_replace("\n", '', $register['username']);
$register['username'] = str_replace(chr(160), '', $register['username']);
$register['username'] = trim($register['username']);

if( !$config['allowregister'] )
{
    message('Registrierung nicht m&ouml;lich!', 'Eine Registrierung ist derzeit leider nicht m&ouml;lich.<br>Bitte versuchen Sie es zu einem späteren Zeitpunkt erneut.');
}

// check username
check_username($register['username']);

// email verification
$r_user = thwb_query("SELECT userid FROM ".$pref."user WHERE useremail='".addslashes($register['useremail'])."'");
if( mysql_num_rows($r_user) > 0 )
{
    $errmsg .= "Es existiert bereits ein Benutzer mit der Email-Adresse $register[useremail].<br>
Wenn Sie ihr Passwort vergessen haben, klicken Sie bitte <a href=\"send_password.php\">hier</a>.";
}

/*if( !ereg("\.", $register['useremail']) OR !ereg("\@", $register['useremail']) OR ereg(" ", $register['useremail']) )
{
    $errmsg .= "Ihre Emailadresse ist nicht g&uuml;ltig!<br>";
}*/
if( !check_email($register['useremail']) )
{
    $errmsg .= "Ihre E-Mailadresse ist nicht g&uuml;ltig!<br>Eine g&uuml;tige E-Mailadresse hat das Format <b>bezeichner\@hoster.toplvl</b> (toplvl max. 4 Zeichen).";
}

while( list(, $bannedmail) = @each($config['bannedemails']) )
{
    $bm = stristr($register['useremail'], $bannedmail);
    if( $bm )
    {
        message('Ung&uuml;ltige E-Mailadresse',
            'Die von Ihnen gew&auml;hlte E-Mailadresse ist leider nicht erlaubt.');
    }
}

if( strlen($errmsg) > 0 )
{
    message("Fehler","Es sind leider folgende Fehler aufgetreten:<br><br><font color='$style[color_err]'>$errmsg</font>");
}


// ready to register
if( $config['use_email'] )
{
    $register['userpassword'] = substr(md5(microtime()), 0, 6);
}
else
{
    if( $register['userpassword'] != $register['userpassword2'] )
    {
        message('Fehler', 'Das Passwort und die Passwortwiederholung unterscheiden sich, bitte überprüfen Sie ihre Angaben.');
    }
}

$time = time();

if( !$register['userpassword'] )
{
    message('Fehler', 'Bitte geben Sie ein Passwort an');
}

thwb_query("INSERT INTO ".$pref."user (username, userjoin, useremail, userpassword, groupids)
    VALUES('".addslashes($register['username']) . "', '" . time() . "',
    '".addslashes($register['useremail'])."',    '".md5($register['userpassword'])."', ',$config[default_groupid],')");

$register['userid'] = mysql_insert_id();

// Benachrichtigungshack bei Neuanmeldungen  //    
    $TRegisteradminmail = new Template("./templates/mail/new_user.mail");
    eval($TRegisteradminmail->GetTemplate("regemail"));
    $r_getadminmail = thwb_query("SELECT useremail FROM ".$pref."user WHERE userlevel = '1'");
    while ($getadminmail = mysql_fetch_array ($r_getadminmail))
    {
    @mail($getadminmail['useremail'], "Neue Board-Registrierung", $regemail, "From: <$config[board_admin]>");
    }
// Ende //

if( $config['use_email'] )
{
    $TRegistermail = new Template("./templates/mail/register.mail");
    eval($TRegistermail->GetTemplate("email"));

    @mail($register['useremail'], $config['board_name'] . " - Registrierung", $email, "From: $config[board_admin]");

// Benachrichtigungshack bei Neuanmeldungen //    
    $TRegisteradminmail = new Template("./templates/mail/new_user.mail");
    eval($TRegisteradminmail->GetTemplate("regemail"));
    $r_getadminmail = thwb_query("SELECT useremail FROM ".$pref."user WHERE userlevel = '1'");
    while ($getadminmail = mysql_fetch_array ($r_getadminmail))
    {
    @mail($getadminmail['useremail'], "Neue Board-Registrierung", $regemail, "From: <$config[board_admin]>");
    }
// Ende //

    message("Registrierung erfolgreich!",
        "Der neue User wurde angelegt.<br>Das Passwort wurde Ihnen per Mail zugeschickt.");
}
else
{
    setcookie("thwb_cookie", md5($register['userpassword']) . $register['userid'], (time() + 60 * 60 * 24 * 365));

// Benachrichtigungshack bei Neuanmeldungen  //    
    $TRegisteradminmail = new Template("./templates/mail/new_user.mail");
    eval($TRegisteradminmail->GetTemplate("regemail"));
    $r_getadminmail = thwb_query("SELECT useremail FROM ".$pref."user WHERE userlevel = '1'");
    while ($getadminmail = mysql_fetch_array ($r_getadminmail))
    {
    @mail($getadminmail['useremail'], "Neue Board-Registrierung", $regemail, "From: <$config[board_admin]>");
    }
// Ende //

    message('Registrierung erfolgreich!',
        'Sie wurden soeben erfolgreich registriert und eingeloggt. Viel Spass!');
}

?>

Seite 1 von 2 – nächste Seite >>