Einträge in einem Forum 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.
Benutzeravatar
Budowelt
Mitglied
Beiträge: 94
Registriert: 11.08.2003 09:38

Beitrag von Budowelt »

so sieht sie aus
[ externes Bild ]
Acid
Ehrenadmin
Beiträge: 12195
Registriert: 26.04.2001 02:00
Wohnort: Berlin

Beitrag von Acid »

ok, da gibt´s leider keine Einträge des Kalendars. In der "posts" Tabelle vielleicht ?
chuckdiepflanze
Mitglied
Beiträge: 3
Registriert: 26.03.2004 16:30

gleiches problem...

Beitrag von chuckdiepflanze »

hi!
bin auch auf der suche nach einer möglichkeit die themen des eventforums die im mycalendar eingetragen werden in der viewforum.php zu sortieren...
hab ein einziges event-forum namens 'events'.
die benötigten daten liegen in der "phpbb_mycalendar" Tabelle im Feld "cal_date". (dort stehen die daten in deser form(bsp:)
"2004-04-25 00:00:00"
wie komm ich aus der vieforum.php da ran um danach zu sortieren??

please help (me=php-dummy)

gruss
chuckdiepflanze
Mitglied
Beiträge: 3
Registriert: 26.03.2004 16:30

keiner ne ahnung??

Beitrag von chuckdiepflanze »

keiner ne ahnung??
:cry:
chuckdiepflanze
Mitglied
Beiträge: 3
Registriert: 26.03.2004 16:30

up

Beitrag von chuckdiepflanze »

UP
Werbung
Mitglied
Beiträge: 712
Registriert: 11.06.2004 12:38
Wohnort: Ausland

Beitrag von Werbung »

das gleiche problem hab ich auch....

wie kann man das Datum sortieren?????
Der Meister sprach: "Lernen ist eine Tätigkeit, bei der man das Ziel nie erreicht und zugleich immer fürchten muss, das schon Erreichte wieder zu verlieren."
jangze
Mitglied
Beiträge: 54
Registriert: 20.01.2005 11:04
Wohnort: köln
Kontaktdaten:

Beitrag von jangze »

hallo

ich möchte gerne zwei verschiedene unterforen unterschiedlich sortieren.
dafür habe ich den o.g. code so angepasst:

Code: Alles auswählen

//-- sortierung der beiträge--------------------------------------------------------------------------------------------------------------------------------
//
$order = ( $forum_id == 15 ) ? 't.topic_title ASC' : 't.topic_type DESC, t.topic_last_post_id DESC';
$order = ( $forum_id == 25 ) ? 't.topic_calendar_time ASC' : 't.topic_type DESC, t.topic_last_post_id DESC';
//
//-- sortierung zu ende-------------------------------------------------------------------------------------------------------------------------------------
die sortierung für das forum 15 funktionierte schon seit längerem einwandfrei, bis ich die sortierung für das forum 25 dazu nahm.
forum 25 funktioniert perfekt, aber die sortierung in forum 15 nicht mehr.

wie kann ich den code ändern, sodass forum 15 wieder korekt sortiert wird?


//edit

antwort fand sich ganz schnell:

Code: Alles auswählen

//-- sortierung der beiträge--------------------------------------------------------------------------------------------------------------------------------
//
$order = ( $forum_id == 25 ) ? 't.topic_calendar_time ASC' : 't.topic_title ASC, t.topic_last_post_id DESC';
//
//-- sortierung zu ende------------------------------------------------------------------------------------------------------------------------------------

jetzt wird im forum 25 alles nach terminen sortiert (aktuellster termin ganz oben) und in allen anderen alles nach alphabet (a: ganz oben)
Werbung
Mitglied
Beiträge: 712
Registriert: 11.06.2004 12:38
Wohnort: Ausland

Beitrag von Werbung »

Also,...

ich möchte diese thema noch mal aufgreifen...

ich will auch mein datum in mycalender im forum sortieren. hat das jetzt jemand hinbekommen bzw. wie mach ich das?????

ich hab jetzt mal in phpmyadmin geschaut und wo das datum ausgegeben wird heißt "cal_dat" kann man das denn irgendwie benutzen/einbaeun?

wenn ja, wie und was muss ich machen, dass es funktioniert???

wäre für hilfe sehr dankbar...
Der Meister sprach: "Lernen ist eine Tätigkeit, bei der man das Ziel nie erreicht und zugleich immer fürchten muss, das schon Erreichte wieder zu verlieren."
berlitztom
Mitglied
Beiträge: 54
Registriert: 16.01.2005 11:10
Wohnort: Chemnitz

Beitrag von berlitztom »

hey,
ich habe eigendlich das selbe problem. in den tabellen topics und posts ist nix drin vom calendar mod was kann man da tun?
berlitztom
Mitglied
Beiträge: 54
Registriert: 16.01.2005 11:10
Wohnort: Chemnitz

Beitrag von berlitztom »

Guten morgen Leute,
ich habe immer noch ein Problem mit meiner Sortierung drotz das ich langsam durchsehe. :(
in der vieforum habe ich die Sortierung ausfindich machen k�nnen.
Die SQL-Werte für die fehlende Sortierung sind in der DB unter mycalendar => cal_date eingetragen.
dazu folgenden Quelltextauszug:
(zur besseren Orientierung habe ich die betrefenden stellen rot gekennzeichnet)
viewforum.php
//
// Grab all the basic data (all topics except announcements)
// for this forum
//
//-- mod : topic display order --------------------------------------------------------------------
// default forum values
$dft_sort = $forum_row['forum_display_sort'];
$dft_order = $forum_row['forum_display_order'];

// Sort def
$sort_value = $dft_sort;
if ( isset($HTTP_GET_VARS['sort']) || isset($HTTP_POST_VARS['sort']) )
{
$sort_value = isset($HTTP_GET_VARS['sort']) ? intval($HTTP_GET_VARS['sort']) : intval($HTTP_POST_VARS['sort']);
}
$sort_list = '<select name="sort">' . get_forum_display_sort_option($sort_value, 'list', 'sort') . '</select>';

// Order def
$order_value = $dft_order;
if ( isset($HTTP_GET_VARS['order']) || isset($HTTP_POST_VARS['order']) )
{
$order_value = isset($HTTP_GET_VARS['order']) ? intval($HTTP_GET_VARS['order']) : intval($HTTP_POST_VARS['order']);
}
$order_list = '<select name="order">' . get_forum_display_sort_option($order_value, 'list', 'order') . '</select>';

// display
$s_display_order = '&nbsp;' . $lang['Sort_by'] . ':&nbsp;' . $sort_list . $order_list . '&nbsp;';

// selected method
$sort_method = get_forum_display_sort_option($sort_value, 'field', 'sort');
$order_method = get_forum_display_sort_option($order_value, 'field', 'order');
//-- fin mod : topic display order -----------------------------------------------------------------
//-- mod : topic display order ---------------------------------------------------------------------
// here we added
// , $sort_method $order_method
//-- modify
$sql = "SELECT t.*, u.username, u.user_id, u2.username as user2, u2.user_id as id2, p.post_username, p2.post_username AS post_username2, p2.post_time
FROM " . TOPICS_TABLE . " t, " . USERS_TABLE . " u, " . POSTS_TABLE . " p, " . POSTS_TABLE . " p2, " . USERS_TABLE . " u2
WHERE t.forum_id = $forum_id
AND t.topic_poster = u.user_id
AND p.post_id = t.topic_first_post_id
AND p2.post_id = t.topic_last_post_id
AND u2.user_id = p2.poster_id
AND t.topic_type = " . POST_ANNOUNCE . "
$limit_topics_time
ORDER BY t.topic_type DESC, $sort_method $order_method, t.topic_last_post_id DESC
LIMIT $start, ".$board_config['topics_per_page'];

//-- fin mod : topic display order -----------------------------------------------------------------
In der includes/functions.php soll die Sortierung wie folgt verwendet werden.
funktions.php
function get_forum_display_sort_option($selected_row=0, $action='list', $list='sort')
{
global $lang;

$forum_display_sort = array(
'lang_key' => array('next_party', 'Last_Post', 'Sort_Topic_Title', 'Sort_Time', 'Sort_Author'),
'fields' => array('cal_date', 't.topic_last_post_id', 't.topic_title', 't.topic_time', 'u.username'),
);
$forum_display_order = array(
'lang_key' => array('Sort_Descending', 'Sort_Ascending'),
'fields' => array('DESC', 'ASC'),
);

// get the good list
$list_name = 'forum_display_' . $list;
$listrow = $$list_name;

// init the result
$res = '';
if ( $selected_row > count($listrow['lang_key']) )
{
$selected_row = 0;
}

// build list
if ($action == 'list')
{
for ($i=0; $i < count($listrow['lang_key']); $i++)
{
$selected = ($i==$selected_row) ? ' selected="selected"' : '';
$l_value = (isset($lang[$listrow['lang_key'][$i]])) ? $lang[$listrow['lang_key'][$i]] : $listrow['lang_key'][$i];
$res .= '<option value="' . $i . '"' . $selected . '>' . $l_value . '</option>';
}
}
else
{
// field
$res = $listrow['fields'][$selected_row];
}
return $res;
}
Kann mir da bitte jemand helfen?
Bis auf Fehlermeldungen hab ich noch nix rein bekommen! :cry:
Wer mal schauen will:
http://www.deejay-world.com/board/viewf ... cde9b9e74c
Antworten

Zurück zu „phpBB 2.0: Mod Support“