[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
Ausgabe des Users der den Artikel angelegt hat - REDAXO Forum
Hallo,

Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.

Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
Benutzeravatar
Richard.Laing
Beiträge: 2105
Registriert: 28. Aug 2005, 00:55
Wohnort: Brühl / Rheinland
Kontaktdaten: Website

Ausgabe des Users der den Artikel angelegt hat

19. Sep 2010, 11:56

hi@all
wie kann ich in einem modul den user der den blog angelegt hat ausgeben lassen?
gruß richy

ps: danke für hinweise ;)
Zuletzt geändert von Richard.Laing am 19. Sep 2010, 14:13, insgesamt 2-mal geändert.
REXvideo Videotutorials für Redaxo www.REXvideo.de
Webseite www.on-laing.de smokezig.de www.smokezig.de

Benutzeravatar
Thomas.Blum
Entwickler
Beiträge: 5063
Registriert: 24. Aug 2004, 22:11
Wohnort: Dresden
Kontaktdaten: Website

19. Sep 2010, 14:04

Hej Richie,

Titel und Text wiedersprechen sich.

Möchtest du ausgeben, wer den Artikel angelegt hat oder eben das Modul/Block/Slice?

Artikel

Code: Alles auswählen

$this->getValue('createuser');

Block/Modul
DB-Abfrage mit Slice Id

vg Thomas

Benutzeravatar
Richard.Laing
Beiträge: 2105
Registriert: 28. Aug 2005, 00:55
Wohnort: Brühl / Rheinland
Kontaktdaten: Website

19. Sep 2010, 14:13

hmmmm ne doch net... [erledigt]
das ist der benutzername ich brauche aber den namen

gruß richy
REXvideo Videotutorials für Redaxo www.REXvideo.de
Webseite www.on-laing.de smokezig.de www.smokezig.de

Benutzeravatar
Richard.Laing
Beiträge: 2105
Registriert: 28. Aug 2005, 00:55
Wohnort: Brühl / Rheinland
Kontaktdaten: Website

19. Sep 2010, 14:17

also im prinzip

Erstellt von: USERNAME am Erstellungsdatum

gruß richy
REXvideo Videotutorials für Redaxo www.REXvideo.de
Webseite www.on-laing.de smokezig.de www.smokezig.de

Benutzeravatar
Thomas.Blum
Entwickler
Beiträge: 5063
Registriert: 24. Aug 2004, 22:11
Wohnort: Dresden
Kontaktdaten: Website

19. Sep 2010, 15:42

Hej,

klär mich mal bitte auf :)

Code: Alles auswählen

das ist der benutzername ich brauche aber den namen 

also im prinzip
Erstellt von: USERNAME am Erstellungsdatum 
Benutzername ist der Username.

vg Thomas

Benutzeravatar
Richard.Laing
Beiträge: 2105
Registriert: 28. Aug 2005, 00:55
Wohnort: Brühl / Rheinland
Kontaktdaten: Website

19. Sep 2010, 16:15

kein problem ich versiuche nochmal ;)

der loginname ist ja der benutzername.
beim anlegen des benutzers, kann ich ja auch den richtigen namen anlegen.

also z.B user ist admin name ist aber Richard Laing

und ich hätte gerne das folgendes erscheint:

Erstellt von: Richard Laing am 19.11.2010 um 16:00 Uhr

das wäre das optimum ;)

ich hoffe das war verständlicher (la la la )
gruß richy
REXvideo Videotutorials für Redaxo www.REXvideo.de
Webseite www.on-laing.de smokezig.de www.smokezig.de

Benutzeravatar
Thomas.Blum
Entwickler
Beiträge: 5063
Registriert: 24. Aug 2004, 22:11
Wohnort: Dresden
Kontaktdaten: Website

19. Sep 2010, 16:52

Hej,

aja ich verstehe.

Mach eine DB-Abfrage über die rex_user.
Daraus erstellst du dir ein Array welches als Key den loginname hat und als Value den Klarnamen. Dieses Array würde ich cachen, da sonst immer ein Abfrage läuft.

Dann ermittelst du im Artikel

Code: Alles auswählen

echo 'Erstellt von: '.$array[$this->getValue('createuser')].' am 19.11.2010 um 16:00 Uhr';
vg Thomas

Benutzeravatar
Richard.Laing
Beiträge: 2105
Registriert: 28. Aug 2005, 00:55
Wohnort: Brühl / Rheinland
Kontaktdaten: Website

19. Sep 2010, 17:01

hmmm
ok verstanden, aber ist es nicht einfacher wenn ich in der modulausgabe einen befehl platziere der die daten ausgibt...

mein vorgehen war eigentlich...

Code: Alles auswählen

if($this->getValue('createuser') != "admin") echo '<p class="erstellt_von">Erstellt von: '.$this->getValue('createuser').'<span> Am: '.$this->getValue('createdate').'</span></p>';
createuser ergibt aber immer z.B. admin (also benutzername des login)
und createdate immer eine (1284894723) zahlenreihe...
ich der phpler wieder :...?

Klarnamen = ?? rex_user oder wie ist der...?

gruß richy
REXvideo Videotutorials für Redaxo www.REXvideo.de
Webseite www.on-laing.de smokezig.de www.smokezig.de

Benutzeravatar
Thomas.Blum
Entwickler
Beiträge: 5063
Registriert: 24. Aug 2004, 22:11
Wohnort: Dresden
Kontaktdaten: Website

19. Sep 2010, 18:04

Ich habs oben doch beschreiben.

Einmal das Array erstellen und dann in der Modulausgabe das so angegebn wie du geschrieben hast. Dann bekommst du den eigentlichen Namen. Ohne das Array gehts nichts bzw. musst jedesmal eine DB-Abfrage ausführen.

vg Thomas

Benutzeravatar
fietstouring
Beiträge: 47
Registriert: 10. Okt 2006, 12:30
Wohnort: Wien
Kontaktdaten: Website

Re: Ausgabe des Users der den Artikel angelegt hat

23. Mär 2014, 14:45

da ich das grad gebraucht habe, hier falls noch jemand bedarf hat:

Code: Alles auswählen

// Get Username from Users -> in array schreiben
if (!function_exists('getUsers')) { 
function getUsers() {

$sql = new rex_sql;
$query = "SELECT login, name FROM rex_user";
$sql->setQuery($query);
$data = $sql->getRows();
$users = array();

if(count($data > 0)) {

	for($i=0; $i<$data;$i++, $sql->next()){

		$users[$sql->getValue('login')] = $sql->getValue('name');
	
	}
}
		return $users;
	}
}

$users = getUsers();

// dann z.b. artikel einer kategorie abfragen 
// und über schleife ausgeben

foreach ( $article_list as $article) {
// hier dann aus dem array (login => username) den usernamen auslesen
$user = $users[$article->getValue('createuser')];

}

Zurück zu „Allgemeines [R4]“