Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Allgemeines zu Drupal ›

Sortierhilfe gesucht (PHP)

Eingetragen von Genesis (597)
am 10.06.2008 - 11:15 Uhr in
  • Allgemeines zu Drupal
  • Drupal 5.x oder neuer

Hallo zusammen,

ich weiß das Thema passt nicht so 100%ig, aber vllt kann mir doch jemand helfen. Ich lasse auf unserer Drupalseite Userliste direkt via PHP generieren, abhängig von der ID. Das Problem ist das die Listen eben auch ID-sortiert ausgegeben werden, ich würde sie aber gern am Namen alphabetisch ausrichten lassen, angefangen bei a, endend bei z.

Leider fehlt mir das PHP-Verständnis komplett (ein Wunder das ich bis hierher gekommen bin), und da mir hier schon mal geholfen wurde, kann mir vllt auch diesmal jemand mit Rat und tat zur Seite stehen.

Der Code steht in einer angelegten Seite die ein eigenes Template hat, und sieht so aus:

$rid = 27;

print('<table width="623" border="0" cellspacing="0" cellpadding="0">');

$sql = "SELECT u.uid, u.name FROM {users} u INNER JOIN {users_roles} ur ON u.uid=ur.uid WHERE ur.rid = $rid";
$result = pager_query($sql, 50);

while ($account = db_fetch_object($result)) {
   $account = user_load(array('uid' => $account->uid));
if($account->picture){$account->picture = '<a href="?q=user/'.$account->uid.'"><img src="/'.$account->picture.'" height="110" width="100" alt="'.$account->name.'""></a>';}
else{$account->picture = '<a href="?q=user/'.$account->uid.'">- kein Avatar -</a>';}

print('<tr>'
    . '<td valign="middle" width="108" height="20" style="border-bottom:1px dotted #8e7e6b;"><strong><a class="prf4" href="?q=user/'.$account->uid.'">' . $account->name . '</a></strong></td>'
    . '<td valign="middle" width="93" style="border-bottom:1px dotted #8e7e6b;"><span style="color:#7c7360;">' . $account->profile_charname. '</span></td>'
    . '<td valign="middle" width="74" style="border-bottom:1px dotted #8e7e6b;">' . $account->profile_volk . '</td>'
    . '<td valign="middle" width="160" style="border-bottom:1px dotted #8e7e6b;">' . $account->profile_klasse . '</td>'
    . '<td valign="middle" width="41" style="border-bottom:1px dotted #8e7e6b;"><div style="text-align:center; padding-right:5px;">' . $account->profile_stufe . '</div></td>'
    . '<td valign="middle" width="97" style="border-bottom:1px dotted #8e7e6b;">' . $account->profile_craft2 . '</td>'
    . '<td valign="middle" width="50" style="border-bottom:1px dotted #8e7e6b;"><a href="?q=user/'.$account->uid.'"><strong>Profil</strong></a></td>'
    . '</tr>');

}

print("</table>\n");

?>

Sehen kann man es auch hier: Mitgliederliste

‹ Nach Serverwechsel lassen sich keine Benutzerbilder mehr hochladen IE7 WinXP SP3 - aufklappbare Eingabebereiche funktionieren nicht ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

darf ich eine ganz doofe

Eingetragen von rapsli (1500)
am 10.06.2008 - 12:28 Uhr

darf ich eine ganz doofe Frage stellen: Warum verwendest du dazu nicht views? Views ist genau dafür gedacht und erspart dir solche Sachen.

Um deine Frage doch noch zu beantworten: google mal nach SQL ORDER BY ...

______________________________
Yet Another Drupal Site (YADS)
http://www.rapsli.ch
******************************

  • Anmelden oder Registrieren um Kommentare zu schreiben

Weil ich das

Eingetragen von Genesis (597)
am 10.06.2008 - 12:38 Uhr

Weil ich das Standard-Profil-System verwendet habe, und dort etliche zusätzliche Felder erstellt habe, und ich auf diese zumindest meiner derzeitigen Kenntnis nach nicht mit Views zugreifen kann, was ich aber für die Mitgliederlisten brauche. Ich war aber schon zu weit um noch auf ein anderes Profilsystem zurück zu greifen, es wäre am Ende zu zeitaufwendig gewesen. So geht es ja, und es ist auch alles fertig, nur stimmt eben die Sortierung nicht...

Schlagt mich wenn ich mit meiner Erkenntnis falsch liege! Das mit order by werde ich mir mal ansehen, vielen Dank Rapsli. :)

  • Anmelden oder Registrieren um Kommentare zu schreiben

Warum verwendest Du nicht das Modul "User List"?

Eingetragen von quiptime (4972)
am 10.06.2008 - 12:57 Uhr
Zitat:

was ich aber für die Mitgliederlisten brauche

Warum verwendest Du nicht das Modul "User List"?

Arbeitet mit dem normalen Userprofil zusammen. Hat eigene Themefunktionen fuer die Listenanzeige.

Erspart Dir vermutlich Deinen eigenen SQL und sonstigen Code.

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

Tabelle, die ausgegeben wird per JS sortierbar machen...

Eingetragen von homo_sapiens@dr... (33)
am 10.06.2008 - 13:29 Uhr

...ich finde auch die Möglichkeit interessant, die Tabelle, die ausgegeben wird einfach per Javascript sortierbar machen zu lassen. Damit erschlägt man dann im Prinzip auch alle potentiellen Wünsche.

siehe dazu:
http://www.kryogenix.org/code/browser/sorttable/

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hiermit schlage ich Dich.

Eingetragen von quiptime (4972)
am 10.06.2008 - 14:00 Uhr
Zitat:

etliche zusätzliche Felder erstellt habe, und ich auf diese zumindest meiner derzeitigen Kenntnis nach nicht mit Views zugreifen kann

Das hat nichts mit Deiner derzeitigen Kenntnissen zu tun. Views kann nicht auf die normalen Profilfelder zugreifen - egal was man mit dem normalen Userprofil macht.

Zitat:

... um noch auf ein anderes Profilsystem zurück zu greifen, es wäre am Ende zu zeitaufwendig gewesen

Hiermit schlage ich Dich.

Selbst wenn damit ein gewisser Zeitaufwand verbunden ist so gleichen die Vorteile der Verwendung von beispielsweise "Node Profile" diesen mehr als aus. Das um so mehr je anspruchsvoller der gewuenschte Umgang mit einem Userprofil ist.

Sehe es doch so.
In der Zeit wo Du Dich Jetzt gerade mit dem normalen Profil abmuehst haettest Du bereits eine alternative Profil-Loesung aufgesetzt. Oder?

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

quiptime schrieb Zitat: In

Eingetragen von rapsli (1500)
am 10.06.2008 - 14:35 Uhr
quiptime][quote schrieb

In der Zeit wo Du Dich Jetzt gerade mit dem normalen Profil abmuehst haettest Du bereits eine alternative Profil-Loesung aufgesetzt. Oder?

ja und nein. Das ganze wird dadurch komplexer. Sicher, wenn man in Zukunft weitere Features plant (z.B. Nutzer können ein PDF hochladen oder solche Sachen), so ist man sicher mit nodeprofile besser beraten. Wenn diese Liste jedoch etwas einmaliges ist und kaum neue Features und Wünsche hinzukommen, so würde ich persönlich auch den minimalistischen Ansatz wählen.

Problem ist natürlich, dass man nie genau wissen kann, was für Wünsche in Zukunft noch hinzukommen und von daher dieses Argument auch ein bisschen zu relativieren ist und dann wiederum kann und muss man auch nicht von Anfang an, eine so generische und flexible Lösung wählen, dass am Schluss immer noch alles machbar ist.

Wie immer ... ein Abwägen von Pros und Kontras.
______________________________
Yet Another Drupal Site (YADS)
http://www.rapsli.ch
******************************

  • Anmelden oder Registrieren um Kommentare zu schreiben

Drupal's normales Userprofil ist nicht wirklich skalierbar

Eingetragen von quiptime (4972)
am 10.06.2008 - 15:15 Uhr

Wenn Fragen von Skalierbarkeit eine Rolle spielen sollte man bei Userprofilen genau abwaegen welchen Weg man einschlaegt.
Drupal's normales Userprofil ist nicht wirklich skalierbar wenn es um mehr geht als nur gethemte Profil-Ansichten oder eine erweiterte Userliste oder eine erweiterte Usersuche.

Wenn erst mal 100 User oder mehr registriert sind und man stellt dann das Profil-System um?

Userprofile mit "Node Profile" und "CCK" zu initialisieren ist nun wirklich keine Aufgabe.

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

Wenn du wirklich meinst,

Eingetragen von dawehner (2639)
am 10.06.2008 - 15:24 Uhr

Wenn du wirklich meinst, dass du das normalen Profil brauchst, dann

<?php
$sql
= "SELECT u.uid, u.name FROM {users} u INNER JOIN {users_roles} ur ON u.uid=ur.uid WHERE ur.rid = $rid ORDER BY u.name ASC";
?>

--------------
Blog www.freeblogger.org: Deutscher IRC-Channel: irc.freenode.net #drupal.de ... Jabber-me: dwehner@im.calug.deXING

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hi dereine :-) ich gruesse Dich

Eingetragen von quiptime (4972)
am 10.06.2008 - 15:28 Uhr

Hi dereine,

:-) ich gruesse Dich,

Wenn gar nix mehr geht dann geht fast immer ein SQL Statement.

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
  • Update Manger läst sich nicht Installieren
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 2 Wochen 1 Tag
  • Hey danke
    vor 2 Wochen 2 Tagen
  • Update: jetzt gibt's ein
    vor 2 Wochen 2 Tagen
  • Hallo, im Prinzip habe ich
    vor 3 Wochen 4 Stunden
  • Da scheint die Terminologie
    vor 3 Wochen 7 Stunden
  • Kannst doch auch alles direkt
    vor 3 Wochen 4 Tagen
  • In der entsprechenden View
    vor 3 Wochen 4 Tagen
  • Dazu müsstest Du vermutlich
    vor 3 Wochen 4 Tagen
  • gelöst
    vor 6 Wochen 1 Tag
  • Ja natürlich. Dass ist etwas,
    vor 6 Wochen 2 Tagen

Statistik

Beiträge im Forum: 250233
Registrierte User: 20452

Neue User:

  • ByteScrapers
  • Mroppoofpaync
  • 4aficiona2

» Alle User anzeigen

User nach Punkten sortiert:
wla9461
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 22 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association