Ranking Spiele-Community auf Startseite

Probleme bei der regulären Arbeiten mit phpBB, Fragen zu Vorgehensweisen oder Funktionsweise sowie sonstige Fragen zu phpBB im Allgemeinen.
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.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Benutzeravatar
mondi
Mitglied
Beiträge: 187
Registriert: 22.02.2003 10:14
Wohnort: Bremerhaven
Kontaktdaten:

Ranking Spiele-Community auf Startseite

Beitrag von mondi »

Hallo,
ich habe die memberlist.php so umgebastelt, dass sie mir auf meiner Startseite die "Hall of Fame" (also die Top3 meiner Spielecommunity (in phpbb2 über Activity MOD) ausliest bzw. anzeigt.

Zu besichtigen ist das hier

http://www.zum.de/psm/index1.php

Wer das in der Spielecommunity testen möchte:

benutzer:spieler
passwort:test

Mein eigentliches Anliegen: Bevor ich das Script (incl. dem Template) an andere weitergebe, wäre es nett, wenn sich mal jemand den Code ansieht und ggf. weiter optimiert, damit
a) mir Peinlichkeiten erspart bleiben
und b) die ganze Sache möglichst optimal ist.

Wie gesagt, es funktioniert. Nur: Sieht es auch schön aus?????

Vielen Dank im Voraus
Mondi

Code: Alles auswählen

<?php
/***************************************************************************
 *                              ranking.php
 *                            -------------------
 *   begin                : Friday, May 11, 2001
 *   copyright            : (C) 2001 The phpBB Group
 *   email                : support@phpbb.com
 *
 *   $Id: memberlist.php,v 1.36.2.8 2003/06/09 13:06:19 psotfx Exp $
 *
 ***************************************************************************/

/***************************************************************************
 *
 *   This program is free software; you can redistribute it and/or modify
 *   it under the terms of the GNU General Public License as published by
 *   the Free Software Foundation; either version 2 of the License, or
 *   (at your option) any later version.
 *
 ***************************************************************************/

define('IN_PHPBB', true);
$phpbb_root_path = 'phpBB2/'; // board folder with! ending mark (if in same folder just './')
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

//
// Start session management
//
$userdata = session_pagestart($user_ip, PAGE_VIEWMEMBERS);
init_userprefs($userdata);
//
// End session management
//

$start = ( isset($HTTP_GET_VARS['start']) ) ? intval($HTTP_GET_VARS['start']) : 0;

if ( isset($HTTP_GET_VARS['mode']) || isset($HTTP_POST_VARS['mode']) )
{
	$mode = ( isset($HTTP_POST_VARS['mode']) ) ? htmlspecialchars($HTTP_POST_VARS['mode']) : htmlspecialchars($HTTP_GET_VARS['mode']);
}
else
{
	$mode = 'points';
}

if(isset($HTTP_POST_VARS['order']))
{
	$sort_order = ($HTTP_POST_VARS['order'] == 'ASC') ? 'ASC' : 'DESC';
}
else if(isset($HTTP_GET_VARS['order']))
{
	$sort_order = ($HTTP_GET_VARS['order'] == 'ASC') ? 'ASC' : 'DESC';
}
else
{
	$sort_order = 'DESC';
}

//
// Ranking sorting
//
$mode_types_text = array($lang['Sort_Username'], $board_config['points_name']);
$mode_types	= array('points');

$select_sort_mode = '<select name="mode">';
for($i = 0; $i < count($mode_types_text); $i++)
{
	$selected = ( $mode == $mode_types[$i] ) ? ' selected="selected"' : '';
	$select_sort_mode .= '<option value="' . $mode_types[$i] . '"' . $selected . '>' . $mode_types_text[$i] . '</option>';
}
$select_sort_mode .= '</select>';

$select_sort_order = '<select name="order">';
if($sort_order == 'ASC')
{
	$select_sort_order .= '<option value="ASC" selected="selected">' . $lang['Sort_Ascending'] . '</option><option value="DESC">' . $lang['Sort_Descending'] . '</option>';
}
else
{
	$select_sort_order .= '<option value="ASC">' . $lang['Sort_Ascending'] . '</option><option value="DESC" selected="selected">' . $lang['Sort_Descending'] . '</option>';
}
$select_sort_order .= '</select>';

//
// Generate page
//
$page_title = $lang['Memberlist'];

$template->set_filenames(array(
	'body' => 'ranking_body.tpl')
);
make_jumpbox('viewforum.'.$phpEx);

$template->assign_vars(array(
	'L_SELECT_SORT_METHOD' => $lang['Select_sort_method'],
	'L_POINTS' => $board_config['points_name'],

	'S_MODE_SELECT' => $select_sort_mode,
	'S_ORDER_SELECT' => $select_sort_order,
	'S_MODE_ACTION' => append_sid("memberlist.$phpEx"))
);

switch( $mode )
{

	case 'points':
		$order_by = "user_points $sort_order LIMIT 3";
		break;
	default:
		$order_by = "user_points $sort_order LIMIT 3";
		break;
}

$sql = "SELECT username, user_points
	FROM " . USERS_TABLE . "
	WHERE user_id <> " . ANONYMOUS . "
	ORDER BY $order_by";
if( !($result = $db->sql_query($sql)) )
{
	message_die(GENERAL_ERROR, 'Could not query users', '', __LINE__, __FILE__, $sql);
}

if ( $row = $db->sql_fetchrow($result) )
{
	$i = 0;
	do
	{
		$username = $row['username'];
		$user_id = $row['user_id'];

		$temp_url = append_sid("search.$phpEx?search_author=" . urlencode($username) . "&showresults=posts");
		$search_img = '<a href="' . $temp_url . '"><img src="' . $images['icon_search'] . '" alt="' . $lang['Search_user_posts'] . '" title="' . $lang['Search_user_posts'] . '" border="0" /></a>';
		$search = '<a href="' . $temp_url . '">' . $lang['Search_user_posts'] . '</a>'; $user_points = $row['user_points'];

		$template->assign_block_vars('memberrow', array(
			'ROW_NUMBER' => $i + ( $HTTP_GET_VARS['start'] + 1 ),
			'ROW_COLOR' => '#' . $row_color,
			'ROW_CLASS' => $row_class,
			'USERNAME' => $username,
		        'POINTS' => $user_points,
			'U_VIEWPROFILE' => append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=$user_id"))
		);

		$i++;
	}
	while ( $row = $db->sql_fetchrow($result) );
}



$template->pparse('body');



?>
Benutzeravatar
Oede
Mitglied
Beiträge: 256
Registriert: 27.10.2002 17:47
Wohnort: Germany
Kontaktdaten:

Beitrag von Oede »

Hi mondi,
also ich währe sehr dankbar dafür, wenn Du mir diesen Mod geben würdest, es sieht nähmlich gut aus auf deiner Page :D

Gruß
Oede :wink:
Wie gut, das es Frauen und Männer gibt!
Benutzeravatar
mondi
Mitglied
Beiträge: 187
Registriert: 22.02.2003 10:14
Wohnort: Bremerhaven
Kontaktdaten:

Beitrag von mondi »

Hier sieht es sogar noch besser aus :D

http://www.stabi.hs-bremerhaven.de/mondwurf/

datei ist unterwegs ...
..:: VERDI FOREVER ::..
Benutzeravatar
AmigaLink
Mitglied
Beiträge: 1417
Registriert: 09.06.2003 21:56
Wohnort: NRW
Kontaktdaten:

Beitrag von AmigaLink »

Kannste mir den auch mal schicken?
Benutzeravatar
mondi
Mitglied
Beiträge: 187
Registriert: 22.02.2003 10:14
Wohnort: Bremerhaven
Kontaktdaten:

Beitrag von mondi »

Also, ich kann nur nochmal wiederholen: Das ist alles etwas zusammengestrickt. Ich habe die obige Datei im Root liegen und dann natürlich noch eine Template-Datei gebastelt (Voraussetzung: Activity MOD und Points_System - sonst geht gar nichts). Mehr habe ich nicht; wie es ausschaut, ist - wie gesagt, hier zu besichtigen (Rangliste rechts):

http://www.stabi.hs-bremerhaven.de/mond ... portal.php

Hier also noch die die Datei ranking_body.tpl
@oede natürlich muss dann die ranking.php (also was mal memberlist.php war) included werden. Ich bin mir sicher, dass das alles noch wesentlich eleganter gelöst werden kann.

Code: Alles auswählen

  <table width="48%" cellpadding="3" cellspacing="1" border="0" class="forumline">
<tr> 
	  <th  nowrap="nowrap" colspan="3"><font color="white" size="-6">Rangliste Online-Spiele</th>
	  
	 
	
	</tr>	

	<!-- BEGIN memberrow -->
	<tr> 
	  <td class="row1" align="center"><span class="gen"><font size="-6">&nbsp;{memberrow.ROW_NUMBER}&nbsp;</span></td>
	  
	  <td class="row1" align="center"><span class="gen"><font size="-6">{memberrow.USERNAME}</span></td>
	  
	  
 <td class="row1" align="center" valign="middle"><span class="gen"><font size="-6">{memberrow.POINTS}</span></td>



	</tr>
	<!-- END memberrow -->




		 <tr>
<td class="row2" align="center" colspan="3"><span class="gen"><font size="-6">
<script language="JavaScript" >
<!--
var jetzt = new Date();
Monatsbezeichnung = new Array ("1.","2.",
"3.","4.","5.","6.","7.","8.",
"9.","10.","11.","12.");
Wochentagsbezeichnung = new Array ("Sonntag",
"Montag","Dienstag","Mittwoch","Donnerstag",
"Freitag","Samstag");
var Tag = jetzt.getDate();
var Wochentag = jetzt.getDay();
var Monat = jetzt.getMonth();

document.write(""
+ " " + Tag + "."
+ Monatsbezeichnung[Monat] + "2003</B>");

// --></script></span> | <a href="phpBB2/activity.php">Einloggen</a></td></tr>




  </table>
..:: VERDI FOREVER ::..
Benutzeravatar
AmigaLink
Mitglied
Beiträge: 1417
Registriert: 09.06.2003 21:56
Wohnort: NRW
Kontaktdaten:

Beitrag von AmigaLink »

Danke!

Der Points-Hack ist nötig?
Hmmm - na gut. :)

Zur info:
Ich habe die ganzen Spiele Sachen übrigens noch garnicht eingebaut. Sammle aber schon seit einiger Zeit alles dafür, weil ich es sehr Interessant finde und mit dem Gedanken an den einbau Spiele. Das ganze passt eigentlich nicht wirklich zur Thematik meiner Seite, deswegen werde ich es mir noch mehr als nur einmal durch den Kopf gehen lassen. :D
Benutzeravatar
mondi
Mitglied
Beiträge: 187
Registriert: 22.02.2003 10:14
Wohnort: Bremerhaven
Kontaktdaten:

Beitrag von mondi »

Code: Alles auswählen

Das ganze passt eigentlich nicht wirklich zur Thematik meiner Seite, deswegen werde ich es mir noch mehr als nur einmal durch den Kopf gehen lassen.  :D

BRAVO! Tutto nel mondo é burla!
..:: VERDI FOREVER ::..
Benutzeravatar
AmigaLink
Mitglied
Beiträge: 1417
Registriert: 09.06.2003 21:56
Wohnort: NRW
Kontaktdaten:

Beitrag von AmigaLink »

mondi hat geschrieben: BRAVO! Tutto nel mondo é burla!
Wie meinen???
Benutzeravatar
sausebaby
Mitglied
Beiträge: 252
Registriert: 28.06.2003 23:13
Wohnort: Würzburg
Kontaktdaten:

Beitrag von sausebaby »

mondi mir gefällt das auch, könntest du das mal genauer schreiben, wo und wie du was genau machst , oder einfügst... z.b. wie die MOD's da ist immer beschrieben wo was hin muß. oder ist das für mich noch zu schwierig, sollte wohl doch noch warten :wink:
Gruß sausebaby
liebe grüße von sausebaby
http://www.sausebaby.net
http://www.sausebaby-tour.de ist mein testforum
Benutzeravatar
Oede
Mitglied
Beiträge: 256
Registriert: 27.10.2002 17:47
Wohnort: Germany
Kontaktdaten:

Beitrag von Oede »

*lol* dann warte ich, bis eine elegante Lösung gefunden wird.
Ich bekomme es einfach nicht hin.

Vielleicht kann mir aber auch einer von Euch weiterhelfen??
Ich habe in der index.php den include-Befehl eingefügt:

Code: Alles auswählen

include("http://www.downtown-board.de/board/ranking.php");
Ich bekomme aber immer dann die Fehlermeldung:

Code: Alles auswählen

Parse error: parse error, unexpected '.' in /home/www/ww2229/html/board/ranking.php on line 77
Das sind die Zeilen 69 - 82 in der ranking.php:

Code: Alles auswählen

	$selected = ( $mode == $mode_types[$i] ) ? ' selected="selected"' : '';
	$select_sort_mode .= '<option value="' . $mode_types[$i] . '"' . $selected . '>' . $mode_types_text[$i] . '</option>';
}
$select_sort_mode .= '</select>';

$select_sort_order = '<select name="order">';
if($sort_order == 'ASC')
{
	$select_sort_order .= '<option value="ASC" selected="selected">' .. $lang['Sort_Ascending'] . '</option><option value="DESC">' . $lang['Sort_Descending'] . '</option>';
}
else
{
	$select_sort_order .= '<option value="ASC">' . $lang['Sort_Ascending'] . '</option><option value="DESC" selected="selected">' . $lang['Sort_Descending'] . '</option>';
}
Gruß
Oede
Wie gut, das es Frauen und Männer gibt!
Antworten

Zurück zu „phpBB 2.0: Administration, Benutzung und Betrieb“