Alphabetisch sortieren!!!

Du hast Probleme beim Einbau oder bei der Benutzung eines Mods? In diesem Forum bist du richtig.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
PetraK
Mitglied
Beiträge: 30
Registriert: 31.12.2004 19:20
Wohnort: Offenbach am Main
Kontaktdaten:

Alphabetisch sortieren!!!

Beitrag von PetraK »

Ich habe ein kleines Probelm, und zwar möchte ich innerhalb des Forums die Themen alphabetisch aufrufen so wie in der Mitgliederliste, zum Beispiel alle Säugetiere, die mit dem Buchstabe A, B, C, D etc. beginnen, sollen mit dem Buchstaben A, B, C oder D beginnend im Thread Säugetiere aufgelistet werden, zum besseren Verständnis:

[ externes Bild ]

http://www.tierdoku.de/viewforum.php?f=2

Wenn ich auf den Buchstaben A drücke, dann erscheint die Fehlermeldung, dass dieses Forum nicht existiert.

Kann es sein, dass die Einträge im viewforum.php nicht korrekt sind? Vielleicht müssen die Änderungen im viewtopic.php vorgenommen werden. Jedenfalls weiss ich hier nicht mehr weiter, vielleicht kann mir einer von den netten Usern bei dem Problem behilflich sein :P

Beste Grüsse PetraK[/img]
Zuletzt geändert von PetraK am 04.04.2005 12:00, insgesamt 1-mal geändert.
Benutzeravatar
Markus67
Ehrenadmin
Beiträge: 28346
Registriert: 12.01.2004 16:02
Wohnort: Neuss
Kontaktdaten:

Beitrag von Markus67 »

Hi ...

Hast du das selbst gebastelt oder irgendwo runtergeladen. So wie es aussieht wird da überhaupt nicht auf die entsprechende Foren-ID zugegriffen.

Markus
PetraK
Mitglied
Beiträge: 30
Registriert: 31.12.2004 19:20
Wohnort: Offenbach am Main
Kontaktdaten:

Beitrag von PetraK »

Hallo Markus,
ich habe es selbst gebastelt, natürlich in Anlehnung des Alphatischen Moduls Mitgliederliste, d. h. ich habe dieses Modul für die verschiedenen Thread etwas umgemodelt, aber wie Du siehst klappt es leider nicht.

Ich kann ja mal das Original-Script als Textdatei hochladen.
PetraK
Mitglied
Beiträge: 30
Registriert: 31.12.2004 19:20
Wohnort: Offenbach am Main
Kontaktdaten:

Beitrag von PetraK »

Das ist das Original für die Memberliste.

###############################################
## Hack Title: Sort memberlist per letter
## Hack Version: 1.0.1
## Author: Freakin' Booty ;-P
## Website: http://www.freakingbooty.tk
## Description: This enables people to search for users that have their name starting
## with a specific letter. You can also choose "others" (meaning non-alpha
## characters), and "all" (the regular list).
## Compatibility: 2.0.3 - 2.0.6
##
## Installation Level: Easy
## Installation Time: 4 - 5 minutes
## Files To Edit: 3
## memberlist.php
## language/lang_english/lang_main.php
## templates/SubSliver/memberlist_body.tpl
##
## Included Files: 0
##
## History:
## 1.0.0: Initial release
## 1.0.1: Hack tested and confirmed to work on 2.0.4 - 2.0.6 aswell.
## Added an HTML space so that the spacing is preserved at all times.
##
## Author Notes:
## None
##
## Support: http://www.phpbbhacks.com/forums
## Copyright: ©2003 Sort memberlist per letter 1.0.1 - Freakin' Booty ;-P
##
###############################################
## You downloaded this hack from phpBBHacks.com, the #1 source for phpBB related downloads.
## Please visit http://www.phpbbhacks.com/forums for support.
###############################################
##
###############################################
## This hack is released under the GPL License.
## This hack can be freely used, but not distributed, without permission.
## Intellectual Property is retained by the hack author(s) listed above.
###############################################

#
#-----[ OPEN ]--------------------------------------------
#
memberlist.php

#
#-----[ FIND ]--------------------------------------------
#
//
// End session management
//

#
#-----[ AFTER, ADD ]--------------------------------------
#
if(isset($HTTP_POST_VARS['letter']))
{
$by_letter = ($HTTP_POST_VARS['letter']) ? $HTTP_POST_VARS['letter'] : 'all';
}
else if(isset($HTTP_GET_VARS['letter']))
{
$by_letter = ($HTTP_GET_VARS['letter']) ? $HTTP_GET_VARS['letter'] : 'all';
}

#
#-----[ FIND ]--------------------------------------------
#
$sql = "SELECT username, user_id, user_viewemail, user_posts, user_regdate, user_from, user_website, user_email, user_icq, user_aim, user_yim, user_msnm, user_avatar, user_avatar_type, user_allowavatar

#
#-----[ BEFORE, ADD ]-------------------------------------
#
//
// Set per-letter selection
//
$others_sql = '';
$select_letter = '';
for ($i = 97; $i <= 122; $i++)
{
$others_sql .= " AND username NOT LIKE '" . chr($i) . "%' ";
$select_letter .= ( $by_letter == chr($i) ) ? chr($i) . '&nbsp;' : '<a href="' . append_sid("memberlist.$phpEx?letter=" . chr($i) . "&mode=$mode&order=$sort_order&start=$start") . '">' . chr($i) . '</a>&nbsp;';
}
$select_letter .= ( $by_letter == 'others' ) ? $lang['Others'] . '&nbsp;' : '<a href="' . append_sid("memberlist.$phpEx?letter=others&mode=$mode&order=$sort_order&start=$start") . '">' . $lang['Others'] . '</a>&nbsp;';
$select_letter .= ( $by_letter == 'all' ) ? $lang['All'] : '<a href="' . append_sid("memberlist.$phpEx?letter=all&mode=$mode&order=$sort_order&start=$start") . '">' . $lang['All'] . '</a>';

$template->assign_vars(array(
'L_SORT_PER_LETTER' => $lang['Sort_per_letter'],
'S_LETTER_SELECT' => $select_letter,
'S_LETTER_HIDDEN' => '<input type="hidden" name="letter" value="' . $by_letter . '">')
);

if($by_letter == 'all')
{
$letter_sql = '';
}
else if($by_letter == 'others')
{
$letter_sql = $others_sql;
}
else
{
$letter_sql = " AND username LIKE '$by_letter%' ";
}

#
#-----[ FIND ]--------------------------------------------
#
WHERE user_id <> " . ANONYMOUS . "
ORDER BY $order_by";

#
#-----[ REPLACE WITH ]------------------------------------
#
WHERE user_id <> " . ANONYMOUS . "$letter_sql
ORDER BY $order_by";

#
#-----[ FIND ]--------------------------------------------
#
$sql = "SELECT count(*) AS total
FROM " . USERS_TABLE . "
WHERE user_id <> " . ANONYMOUS;

#
#-----[ REPLACE WITH ]------------------------------------
#
$sql = "SELECT count(*) AS total
FROM " . USERS_TABLE . "
WHERE user_id <> " . ANONYMOUS . $letter_sql;

#
#-----[ FIND ]--------------------------------------------
#
$pagination = generate_pagination("memberlist.$phpEx?mode=$mode&order=$sort_order", $total_members, $board_config['topics_per_page'], $start). '&nbsp;';

#
#-----[ INLINE, FIND ]-------------------------------------
#
&order=$sort_order

#
#-----[ AFTER, ADD ]--------------------------------------
#
# this is before the quote!
#
&letter=$by_letter

#
#-----[ OPEN ]--------------------------------------------
#
# make sure to edit this file for every language installed
#
language/lang_english/lang_main.php

#
#-----[ FIND ]--------------------------------------------
#
//
// That's all, Folks!
// -------------------------------------------------

#
#-----[ BEFORE, ADD ]-------------------------------------
#
//
// Sort memberlist per letter
//
$lang['Sort_per_letter'] = 'Show only usernames starting with';
$lang['Others'] = 'others';
$lang['All'] = 'all';

#
#-----[ OPEN]--------------------------------------------
#
# make sure to edit this file for every template installed
#
templates/subSilver/memberlist_body.tpl

#
#-----[ FIND ]--------------------------------------------
#
<input type="submit" name="submit" value="{L_SUBMIT}" class="liteoption" />
</span></td>
</tr>

#
#-----[ AFTER, ADD ]--------------------------------------
#
<tr>
<td colspan="2" align="right" nowrap="nowrap"><span class="genmed">{L_SORT_PER_LETTER}:&nbsp;{S_LETTER_SELECT}{S_LETTER_HIDDEN}</span></td>
</tr>

#
#-----[ SAVE & CLOSE ALL FILES ]--------------------------
#
PetraK
Mitglied
Beiträge: 30
Registriert: 31.12.2004 19:20
Wohnort: Offenbach am Main
Kontaktdaten:

Beitrag von PetraK »

Und in dem geänderten script steht statt memberlist.php viewforum.php, dementsprechend habe ich die Einträge auch in der viewforum.php vorgenommen.
Benutzeravatar
Markus67
Ehrenadmin
Beiträge: 28346
Registriert: 12.01.2004 16:02
Wohnort: Neuss
Kontaktdaten:

Beitrag von Markus67 »

Hi ...

Das funktioniert so nicht mit der viewforum da ja die Foren-ID in dem Script nicht mit berücksichtig wird.

Versuchs mal mit dem hier :wink:
[BETA] Sort Topics Alphabetically

Markus
PetraK
Mitglied
Beiträge: 30
Registriert: 31.12.2004 19:20
Wohnort: Offenbach am Main
Kontaktdaten:

Beitrag von PetraK »

Hallo Markus,
vielen lieben Dank für Deine Mühe, ich glaube, dass ist es, was ich so lange gesucht habe. Nochmals vielen Dank für Deine Hilfe :grin:

Grüsse PetraK
PetraK
Mitglied
Beiträge: 30
Registriert: 31.12.2004 19:20
Wohnort: Offenbach am Main
Kontaktdaten:

Beitrag von PetraK »

Hallo Markus,
es klappt mit dem Alphabet sehr gut, ich habe es schon eingebaut, kannst es Dir ja mal ansehen. Das Alphabet ist deshalb so wichtig für mich, da die Rubriken der Tierarten immer grösser werden und irgendwann verliert man die Übersicht und ich glaube für den User ist es auch einfacher.

Und nochmals vielen Dank Markus :grin:

Beste Grüsse PetraK

P.S. Ich war schon öfter auf Deiner Seite, gefällt mir sehr gut.
Hast Du einen kleinen Button in der Grösse 88 x 31 Pixel, ich würde nämlich gerne einen Link zu Deiner Seite einbauen.
thompson
Mitglied
Beiträge: 797
Registriert: 14.11.2002 14:04
Wohnort: irgendwo im süden
Kontaktdaten:

Beitrag von thompson »

super mod. läßt sich sicher prima verwenden. ich glaube dafür habe ich auch schon eine idee.

vielen dank auch von mir.
Emmelmann
Mitglied
Beiträge: 12
Registriert: 26.08.2005 01:15

Beitrag von Emmelmann »

Ich habe da ein Problem mit diesem Mod.

An für sich funktioniert er einwandfrei, doch wenn die Liste mehr als eine Seite hat, dann wird Seite 2 erst mal leer angezeigt und man muss um Seite 2 angezeigt zu bekommen wieder den Auswahlbuchstaben klicken.

Weiß da jemand eine Lösung?

Gruss
Peter
Antworten

Zurück zu „phpBB 2.0: Mod Support“