Seite 2 von 2
Verfasst: 23.01.2006 13:30
von Black Panther
Christian_W hat geschrieben:Das funktioniert auch in 2.0.19 noch.
Hast Du das Freischalten durch den Admin deaktiviert?
nein. Die eMail mit dem Aktivierungslink bekomme ich noch... es steht auch noch mein Text "E-Mail Adresse:" mit drinne (hatte ich damals so eingefügt), nur offenbar wird die Variable $email (oder wie sie heißt) plötzlich nicht mehr mit in der Mail übermittelt...
Verfasst: 23.01.2006 13:34
von Black Panther
derd hat geschrieben:Wie hast du geupdatet? Wenn du die alte Version des Forums mit der neuen komplett ersetzt hast, dann musst du wohl oder überall das noch einmal einbauen. Oder hast du das Update mit code changes gemacht?
habe nur das Update auf die nächst höhere Version gemacht...
Und gegen Spam Anmeldungen hilft das anschalten der visuelle Bestätigung. Das kannst du im ACP unter Konfiguration zuschalten.
Den Punkt findest du unter Allgemeine Boardeinstellungen.
ok, Danke... hab's jetzt mal aktiviert...
Verfasst: 23.01.2006 15:12
von derd
habe nur das Update auf die nächst höhere Version gemacht...
Dann wirst du die Änderungen noch einmal einbauen müssen.
Damit die Änderungen bestehen beim Updaten empfiehlt sich die Code Changes zu nehmen die findest du hier
HIER
Wenn du aber nur die eine Änderung hast dann lohnt sich der Aufwand nicht. Da ist es besser du baust es nach jedem Update wieder neu ein

Verfasst: 23.01.2006 21:06
von Black Panther
irgendwas stimmt da offenbar nicht...
Die Variable des Eingabefeldes für die User eMail Adresse ist $email...
Somit habe ich in der admin_activate.tpl das hier stehen
Email Adresse: {EMAIL}
und in der usercp_register.php diese 2 Zeilen (in fett)
$emailer->assign_vars(array(
'SITENAME' => $board_config['sitename'],
'USERNAME' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, substr(str_replace("\'", "'", $username), 0, 25)),
'EMAIL_SIG' => (!empty($board_config['board_email_sig'])) ? str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']) : '',
'EMAIL' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, str_replace("\'", "'", $email)),
'U_ACTIVATE' => $server_url . '?mode=activate&' . POST_USERS_URL . '=' . $user_id . '&act_key=' . $user_actkey)
und hier
$emailer->assign_vars(array(
'USERNAME' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, substr(str_replace("\'", "'", $username), 0, 25)),
'EMAIL_SIG' => str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']),
'EMAIL' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, str_replace("\'", "'", $email)),
'U_ACTIVATE' => $server_url . '?mode=activate&' . POST_USERS_URL . '=' . $user_id . '&act_key=' . $user_actkey)
Kommt aber keine eMail Adresse mit an... und trotz aktivierter visueller Bestätigung erscheint auch keine Codeanzeige beim registrieren...
Verfasst: 25.01.2006 09:19
von Black Panther
keiner eine Ahnung, wo das Problem liegen könnte???

Verfasst: 27.01.2006 13:49
von Black Panther
ich geb die Hoffnung nicht auf...

Verfasst: 05.03.2006 14:13
von Ariald
Ich habe es so gemacht und es funktioniert prima:
Original usercp_register.php:
Code: Alles auswählen
if ( $board_config['require_activation'] == USER_ACTIVATION_ADMIN )
{
$sql = "SELECT user_email, user_lang
FROM " . USERS_TABLE . "
WHERE user_level = " . ADMIN;
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not select Administrators', '', __LINE__, __FILE__, $sql);
}
while ($row = $db->sql_fetchrow($result))
{
$emailer->from($board_config['board_email']);
$emailer->replyto($board_config['board_email']);
$emailer->email_address(trim($row['user_email']));
$emailer->use_template("admin_activate", $row['user_lang']);
$emailer->set_subject($lang['New_account_subject']);
$emailer->assign_vars(array(
'USERNAME' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, substr(str_replace("\'", "'", $username), 0, 25)),
'EMAIL_SIG' => str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']),
'U_ACTIVATE' => $server_url . '?mode=activate&' . POST_USERS_URL . '=' . $user_id . '&act_key=' . $user_actkey)
);
$emailer->send();
$emailer->reset();
}
$db->sql_freeresult($result);
}
Neu:
Code: Alles auswählen
if ( $board_config['require_activation'] == USER_ACTIVATION_ADMIN )
{
$sql = "SELECT user_email, user_lang
FROM " . USERS_TABLE . "
WHERE user_level = " . ADMIN;
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not select Administrators', '', __LINE__, __FILE__, $sql);
}
while ($row = $db->sql_fetchrow($result))
{
$emailer->from($board_config['board_email']);
$emailer->replyto($board_config['board_email']);
$emailer->email_address(trim($row['user_email']));
$emailer->use_template("admin_activate", $row['user_lang']);
$emailer->set_subject($lang['New_account_subject']);
$emailer->assign_vars(array(
'USERNAME' => preg_replace($unhtml_specialchars_match, $unhtml_specialchars_replace, substr(str_replace("\'", "'", $username), 0, 25)),
'EMAIL_SIG' => str_replace('<br />', "\n", "-- \n" . $board_config['board_email_sig']),
'EMAIL' => $email,
'LOCATION' => $location,
'OCCUPATION' => $occupation,
'INTERESTS' => $interests,
'U_ACTIVATE' => $server_url . '?mode=activate&' . POST_USERS_URL . '=' . $user_id . '&act_key=' . $user_actkey)
);
$emailer->send();
$emailer->reset();
}
$db->sql_freeresult($result);
}
Ich habe also lediglich unterhalb von "'EMAIL_SIG' => str..." folgendes eingefügt:
Code: Alles auswählen
'EMAIL' => $email,
'LOCATION' => $location,
'OCCUPATION' => $occupation,
'INTERESTS' => $interests,
Gruß
Ariald