Gruppeninformationen in CSV-Datei speichern
Forumsregeln
Auch wenn hier der Support für phpBB 2 weiterhin aufrecht erhalten bleibt, weisen wir darauf hin, dass das phpBB 2 nicht mehr offiziell unterstützt und weiterentwickelt wird!
Auch wenn hier der Support für phpBB 2 weiterhin aufrecht erhalten bleibt, weisen wir darauf hin, dass das phpBB 2 nicht mehr offiziell unterstützt und weiterentwickelt wird!
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Gruppeninformationen in CSV-Datei speichern
Einen Export mal ganz anderer Art liefert das angehangene Snippet.
Damit ist es möglich, daß Moderatoren und Administratoren die Informationen einer Gruppe, also genauer, über deren Mitglieder, per CSV-Datei herunterladen können.
Dabei werden 3 Blöcke in der Datei erstellt, die da sind
- Gruppenmoderator
- Gruppenmitglieder
- Wartende Benutzer
Jeweils mit einer Überschriftszeile je Block.
Diese Datei kann man dann z. B. bequem in Excel öffnen und weiterverarbeiten.
-- Snippet angepasst, da unklar, wo wsa eingefügt werden soll --
Damit ist es möglich, daß Moderatoren und Administratoren die Informationen einer Gruppe, also genauer, über deren Mitglieder, per CSV-Datei herunterladen können.
Dabei werden 3 Blöcke in der Datei erstellt, die da sind
- Gruppenmoderator
- Gruppenmitglieder
- Wartende Benutzer
Jeweils mit einer Überschriftszeile je Block.
Diese Datei kann man dann z. B. bequem in Excel öffnen und weiterverarbeiten.
-- Snippet angepasst, da unklar, wo wsa eingefügt werden soll --
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Zuletzt geändert von oxpus am Di 25.Apr, 2006 12:25, insgesamt 1-mal geändert.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Ganz super-grosse-klasse!
Ich vermute mal, dass ich hier eingreifen muss wenn ich weitere Felder exportieren will:
und
Ich vermute mal, dass ich hier eingreifen muss wenn ich weitere Felder exportieren will:
Code: Alles auswählen
#
#-----[ FIND ]-----
#
function generate_user_info(&$row, $date_format, $group_mod, &$from, &$posts, &$joined, &$poster_avatar, &$profile_img, &$profile, &$search_img, &$search, &$pm_img, &$pm, &$email_img, &$email, &$www_img, &$www, &$icq_status_img, &$icq_img, &$icq, &$aim_img, &$aim, &$msn_img, &$msn, &$yim_img, &$yim)
#
#-----[ BEFORE, ADD ]-----
#
function generate_user_short_info(&$row, &$username, &$from, &$posts, &$email, &$www)
{
$username = "'".$row['username']."'";
$from = "'".$row['user_from']."'";
$posts = ($row['user_id'] == ANONYMOUS) ? 0 : $row['user_posts'];
$email = "'".$row['user_email']."'";
$www = "'".$row['user_website']."'";
return;
}Code: Alles auswählen
#
#-----[ FIND ]-----
#
$template->pparse('info');
#
#-----[ AFTER, ADD ]-----
#
}
else
{
generate_user_short_info($group_moderator, $username, $from, $posts, $email, $www);
$export_string = $lang['Group_Moderator'].';'.$lang['Posts'].';'.$lang['Location'].';'.$lang['Email'].';'.$lang['Website']."\n";
$export_string .= $username.';'.$posts.';'.$from.';'.$email.';'.$www."\n";
$export_string .= $lang['Group_Members'].';'.$lang['Posts'].';'.$lang['Location'].';'.$lang['Email'].';'.$lang['Website']."\n";
for ($i = 0; $i < sizeof($group_members); $i++)
{
generate_user_short_info($group_members[$i], $username, $from, $posts, $email, $www);
$export_string .= $username.';'.$posts.';'.$from.';'.$email.';'.$www."\n";
}
$export_string .= $lang['Pending_members'].';'.$lang['Posts'].';'.$lang['Location'].';'.$lang['Email'].';'.$lang['Website']."\n";
for ($i = 0; $i < sizeof($modgroup_pending_list); $i++)
{
generate_user_short_info($modgroup_pending_list[$i], $username, $from, $posts, $email, $www);
$export_string .= $username.';'.$posts.';'.$from.';'.$email.';'.$www."\n";
}
$fp = fopen($phpbb_root_path.'cache/g'.$group_id.'.csv', "w");
fwrite($fp, $export_string);
fclose($fp);
$size = @filesize($phpbb_root_path.'cache/g'.$group_id.'.csv');
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/octet-stream");
header("Content-Transfer-Encoding: binary");
header("Content-Disposition: attachment; filename=\"".'g'.$group_id.'.csv'."\"");
readfile($phpbb_root_path.'cache/g'.$group_id.'.csv');
@unlink($phpbb_root_path.'cache/g'.$group_id.'.csv');
exit;
}Ahem,
dies kommt in meiner groucp.php zweimal vor:
Ich vermute, Du meinst die Zweite.
Und:
gibt es bei mir nicht.
Dafür aber
und
dies kommt in meiner groucp.php zweimal vor:
Code: Alles auswählen
#
#-----[ FIND ]-----
#
$page_title = $lang['Group_Control_Panel'];
include($phpbb_root_path . 'includes/page_header.'.$phpEx);Und:
Code: Alles auswählen
#
#-----[ FIND ]-----
#
$template->pparse('info');Dafür aber
Code: Alles auswählen
$template->pparse('user');Code: Alles auswählen
$template->pparse('confirm');- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Ich habe das Snippet angepasst, um die erste Stelle besser zu finden.
Und in der original groupcp.php gibt es sehr wohl die Zeile

Und in der original groupcp.php gibt es sehr wohl die Zeile
Code: Alles auswählen
$template->pparse('info');
Zuletzt geändert von oxpus am Di 25.Apr, 2006 12:28, insgesamt 1-mal geändert.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
SORRY! Aber auch das taucht zweimal auf:
Code: Alles auswählen
#
#-----[ FIND ]-----
#
$template->assign_vars(array(- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Öhm, Grundlagen beim MOD-Einbau:
Immer von der Stelle aus das nächste suchen, von wo man gemoddet hat.
Wenn Du "make_jumpbox(..." korrekt gefunden hast, gibt es nur EINE nächste möglich Stelle, die zu finden ist
Immer von der Stelle aus das nächste suchen, von wo man gemoddet hat.
Wenn Du "make_jumpbox(..." korrekt gefunden hast, gibt es nur EINE nächste möglich Stelle, die zu finden ist
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Trotzdem, einige sind anders eingerückt.
Ist dieser gemeint:
Edit: es funktioniert. Danke für Deine Hilfe!
Ist dieser gemeint:
Code: Alles auswählen
$template->assign_vars(array(
'MESSAGE_TITLE' => $lang['Confirm'],
'MESSAGE_TEXT' => $unsub_msg,
'L_YES' => $lang['Yes'],
'L_NO' => $lang['No'],
'S_CONFIRM_ACTION' => append_sid("groupcp.$phpEx"),
'S_HIDDEN_FIELDS' => $s_hidden_fields)
);
Zuletzt geändert von Holger am Di 25.Apr, 2006 14:50, insgesamt 1-mal geändert.
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Wie ich vermutet hatte:
hattest Du an falscher Stelle gefunden.
Hiermit sollte es jetzt gehen:
Code: Alles auswählen
$template->assign_vars(array(Hiermit sollte es jetzt gehen:
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Mehr Spalten?
In der neuen Funktion werden die Werte aus dem Array, das als erster Parameter übergeben wird (beinhaltet alle Daten aus den Abfragen!) in Variablen gepackt.
Wenn es nun mehr als die 5 sein sollen, musst Du die weiteren Variablen wie vorgegeben anlegen.
Also in der Funktionsdefinition und Erstellung.
Dann in der Dateibearbeitung genau das gleiche:
Hier zuerst die Beschreibung, wird ja die "Kopfzeile" des jeweiligen Bereiches, und dann die Werte selber.
Ich denke, die "Vorlage" sollte hier eigentlich eindeutig genug sein.
Und immer beachten, daß Strings IMMER in Hochkommas zu setzen sind!
In der neuen Funktion werden die Werte aus dem Array, das als erster Parameter übergeben wird (beinhaltet alle Daten aus den Abfragen!) in Variablen gepackt.
Wenn es nun mehr als die 5 sein sollen, musst Du die weiteren Variablen wie vorgegeben anlegen.
Also in der Funktionsdefinition und Erstellung.
Dann in der Dateibearbeitung genau das gleiche:
Hier zuerst die Beschreibung, wird ja die "Kopfzeile" des jeweiligen Bereiches, und dann die Werte selber.
Ich denke, die "Vorlage" sollte hier eigentlich eindeutig genug sein.
Und immer beachten, daß Strings IMMER in Hochkommas zu setzen sind!
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Oxpus,
ich versuche ein weiteres Feld einzufügen.
Ich habe in usercp_viewprofile.php folgende Felder:
Ich habe in der groupcp.php versucht www in foraldertill zu ändern, klappt aber nicht.
Die Spalte foraldertill bleibt in der Excel-Tabelle leer.
ich versuche ein weiteres Feld einzufügen.
Ich habe in usercp_viewprofile.php folgende Felder:
Code: Alles auswählen
'FORALDERTILL' => ( $profiledata['user_foraldertill'] ) ? $profiledata['user_foraldertill'] : ' ',
'L_FORALDERTILL' => $lang['Foraldertill'],
'HEMTEL' => ( $profiledata['user_hemtel'] ) ? $profiledata['user_hemtel'] : ' ',
'L_HEMTEL' => $lang['Hemtel'],
'MOBILTEL' => ( $profiledata['user_mobiltel'] ) ? $profiledata['user_mobiltel'] : ' ',
'L_MOBILTEL' => $lang['Mobiltel'],
'JOBBTEL' => ( $profiledata['user_jobbtel'] ) ? $profiledata['user_jobbtel'] : ' ',
'L_JOBBTEL' => $lang['Jobbtel'],
'ADDRESS' => ( $profiledata['user_address'] ) ? $profiledata['user_address'] : ' ',
'L_ADDRESS' => $lang['Address'],
'POSTNUMMER' => ( $profiledata['user_postnummer'] ) ? $profiledata['user_postnummer'] : ' ',
'L_POSTNUMMER' => $lang['Postnummer'],
'STAD' => ( $profiledata['user_stad'] ) ? $profiledata['user_stad'] : ' ',
'L_STAD' => $lang['Stad'],
'FORALDRARGRUPP' => ( $profiledata['user_foraldrargrupp'] ) ? $profiledata['user_foraldrargrupp'] : ' ',
'L_FORALDRARGRUPP' => $lang['Foraldrargrupp'],Code: Alles auswählen
function generate_user_short_info(&$row, &$username, &$from, &$posts, &$email, &$foraldertill)
{
$username = "'".$row['username']."'";
$from = "'".$row['user_from']."'";
$posts = ($row['user_id'] == ANONYMOUS) ? 0 : $row['user_posts'];
$email = "'".$row['user_email']."'";
$foraldertill = "'".$row['user_foraldertill']."'";
return;
}
Zuletzt geändert von Holger am Di 20.Nov, 2007 10:53, insgesamt 1-mal geändert.
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Die Abfrage in der groupcp.php!
Dort wird sicherlich noch user_www anstelle user_foraldertill abgefragt!
Kannst aber auch user_foraldertill zusätzlich dort einfügen, um für die Ansicht im Board weiterhin die Webseite zu haben.
Dort wird sicherlich noch user_www anstelle user_foraldertill abgefragt!
Kannst aber auch user_foraldertill zusätzlich dort einfügen, um für die Ansicht im Board weiterhin die Webseite zu haben.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
In der groupcp.php taucht nirgends user_www auf.
Ich habe aber
Ich habe aber
Code: Alles auswählen
function generate_user_short_info(&$row, &$username, &$from, &$posts, &$email, &$foraldertill)
{
$username = "'".$row['username']."'";
$from = "'".$row['user_from']."'";
$posts = ($row['user_id'] == ANONYMOUS) ? 0 : $row['user_posts'];
$email = "'".$row['user_email']."'";
$foraldertill = "'".$row['user_foraldertill']."'";
return;
}- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Die Daten werden doch abgefragt, müssen also damit ja zunächst aus der Datenbank kommen.
Und in genau dieser Abfrage muss das Feld mit rein, damit Du es weiter verwenden kannst.
Und in genau dieser Abfrage muss das Feld mit rein, damit Du es weiter verwenden kannst.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Das heisst hier:
Oder?
Mann, ist das schwierig! ¦4
Code: Alles auswählen
//
// Get user information for this group
//
$sql = "SELECT u.username, u.user_id, u.user_viewemail, u.user_posts, u.user_regdate, u.user_from, u.user_website, u.user_email, u.user_icq, u.user_aim, u.user_yim, u.user_msnm, ug.user_pending
FROM " . USERS_TABLE . " u, " . USER_GROUP_TABLE . " ug
WHERE ug.group_id = $group_id
AND u.user_id = ug.user_id
AND ug.user_pending = 0
AND ug.user_id <> " . $group_moderator['user_id'] . "
ORDER BY u.username";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Error getting user list for group', '', __LINE__, __FILE__, $sql);
}
$group_members = $db->sql_fetchrowset($result);
$members_count = count($group_members);
$db->sql_freeresult($result);
$sql = "SELECT u.username, u.user_id, u.user_viewemail, u.user_posts, u.user_regdate, u.user_from, u.user_website, u.user_email, u.user_icq, u.user_aim, u.user_yim, u.user_msnm
FROM " . GROUPS_TABLE . " g, " . USER_GROUP_TABLE . " ug, " . USERS_TABLE . " u
WHERE ug.group_id = $group_id
AND g.group_id = ug.group_id
AND ug.user_pending = 1
AND u.user_id = ug.user_id
ORDER BY u.username";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Error getting user pending information', '', __LINE__, __FILE__, $sql);
}Mann, ist das schwierig! ¦4
- oxpus
- Administrator
- Beiträge: 28735
- Registriert: Mo 27.Jan, 2003 22:13
- Wohnort: Bad Wildungen
- Kontaktdaten:
Ja, genau.
Und da muss u.user_foraldertill mit rein, damit Du die Angaben auch weiter verarbeiten kannst.
Und da muss u.user_foraldertill mit rein, damit Du die Angaben auch weiter verarbeiten kannst.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!