Seite 1 von 2
Emailadressen der Benutzer exportieren
Verfasst: 05.07.2007 18:30
von Eisenbart
Hallo,
ich hab nur mal eine kurze Frage: Kann ich die Emailadressen der Benutzer irgendwie exportieren? Die Massen-Email-Funktion funktioniert nämlich leider nicht, und ich versende Rundschreiben normalerweise sowieso über ein externes Programm.
Verfasst: 05.07.2007 19:23
von gn#36
In phpmyadmin (oder wie auch immer sonst in deiner Datenbank) ausführen:
Code: Alles auswählen
SELECT user_email FROM phpbb_users ORDER BY user_id ASC;
phpbb_ ist durch dein Tabellen-Prefix auszutauschen.
Verfasst: 06.07.2007 00:41
von Eisenbart
Gar nicht schlecht!

Und krieg ich das irgendwie auch in eine Textdatei?
Verfasst: 06.07.2007 00:59
von Mahony
Hallo
Eisenbart hat geschrieben:Gar nicht schlecht!

Und krieg ich das irgendwie auch in eine Textdatei?
Natürlich geht auch das. Schreib das hier in eine Text - Datei
Code: Alles auswählen
<?php
$con = @mysql_connect("hostname","Benutzername","Passwort");
if (!$con) { echo "Leider ist z.Z. keine Verbindung zur Datenbank möglich ! Bitte versuchen Sie es später noch einmal.\n"; exit; }
$erg = mysql_db_query("Datenbankname","SELECT user_email from phpbb_users WHERE user_id >0");
print "<table><tr>";
while (list($user_email) = mysql_fetch_row($erg)) {
print "<tr><td><b>Emailadresse: </b>$user_email</tr>\n";
}
print "</table>";
if(mysql_num_rows($erg)<1)
{
echo "<b>Leider gibt für Ihre Sucheingabe keinen Treffer !";
}
mysql_close($con);
?>
Jetzt die Datei umbenennen in zum Beispiel mailaddys.php (oder wie du willst) und lade das Script auf deinen Webspace. Jetzt kannst du das Script im Browser aufrufen und erhälst deine E-Mail Liste die du per "Datei" - "Speichern unter" (beim Internet Explorer) oder per "Datei" - "Seite speichern unter" (beim Firefox) als Textdatei abspeichern kannst.
P.S. Die Zeile
Code: Alles auswählen
$con = @mysql_connect("hostname","Benutzername","Passwort");
und
musst du natürlich entsprechend deiner Verbindungsdaten anpassen.
P.P.S. Nicht vergessen das Script nach dem auslesen der E-Mails wieder vom Server zu löschen um Missbrauch zu verhindern.
Grüße: Mahony
Verfasst: 06.07.2007 01:02
von gn#36
Mini Skript:
Code: Alles auswählen
<?php
$phpbb_root_path = './';
$phpEx = 'php';
include($phpbb_root_path . 'common.php');
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
if(!$userdata['session_logged_in'] || $userdata['user_level'] != ADMIN)
{
message_die(GENERAL_MESSAGE, 'Keine Befugnis');
}
$sql = 'SELECT username, user_email FROM '. USERS_TABLE . ' WHERE user_id > 0 ORDER BY user_id';
$result = $db->sql_query($sql) or message_die(GENERAL_ERROR, 'Konnte Daten nicht holen','',__LINE__,__FILE__,$sql);
include($phpbb_root_path . 'includes/page_header.php');
while($row = $db->sql_fetchrow($result))
{
//echo $row['username'] . ', ';
echo $row['user_email'] . "<br>\n";
}
include($phpbb_root_path . 'includes/page_tail.php');
?>
Ich habe das jetzt kurz zusammengeschrieben, daher würde ich nicht empfehlen das lange auf dem Server zu lassen, auch wenn ich es versucht habe möglichst sicher zu machen, indem du eingeloggt sein musst und mindestens Admin. Wenn du die auskommentierte Zeile (mit //) wieder einfügst (// entfernen) dann bekommst du außerdem die Usernamen dazu.
Funktioniert nur im Root-Verzeichnis des Forums.
EDIT: Hm, da war Mahony wohl schneller...
Verfasst: 06.07.2007 01:08
von Mahony
Hallo
gn#36 hat geschrieben:EDIT: Hm, da war Mahony wohl schneller...
Dein Script ist aber besser, da es die Usernamen mit ausgibt und auch etwas sicherer ist.
Grüße: Mahony
Verfasst: 06.07.2007 01:22
von gn#36
Zumindest wenn das ganze ein phpbb2 Forum ist...
Deins geht auch bei Olympus.
Verfasst: 06.07.2007 01:49
von Pyramide
gn#36 hat geschrieben:Hm, da war Mahony wohl schneller...
Mahony hat geschrieben:Dein Script ist aber besser
gn#36 hat geschrieben:Deins geht auch bei Olympus.
*Warnschild aufstell*
[ externes Bild ]
Verfasst: 06.07.2007 07:06
von gloriosa
Hallo,
und dann gibt es ja schon länger diese
Lösung !

Verfasst: 06.07.2007 11:37
von Eisenbart
Vielen Dank, werde ich mal ausprobieren!
