Hallo,
habe ein Authentifizierungsproblem in meinem Forum.
Zum Hintergrund: Ich habe einen Mod "(WoW Charakterliste)" ins Forum eingebaut. Die Funktionen dieses Mods stehen voll zur Verfügung und können genutzt werden.
Folgendes Problem tritt aber auf:
Nach dem Login auf der Hauptseite wird oben rechts "Logout [ Benutzername ]" angezeigt und auch in jede Unterseite mitgenommen. Nur in die Unterseite des Mods nicht. Nach Klick auf den Link: "Charakterliste (WoW)" im Forumskopf, verliert der Browser die Authentifizierung. Habe verschiedene Browser ausprobiert. Mit Mozilla und IE5 funktioniert alles. Nur der IE6 macht diese Probleme. Ich glaube aber nicht das es am Browser liegt, sondern an der PHP-Seite des Mods, welcher die Anmeldedaten nicht auslesen und übernehmen kann. Denn bei den anderen Unterseiten (z.B. Profil oder Benutzergruppen) funktioniert es ja.
Weiß jemand, wo die Übernahme der Anmeldeinformationen von der Hauptseite auf eine Unterseite bestimmt sind?
Vielen Dank für jede Hilfe
Authentifizierungsproblem
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.
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.
Habe hier mal den Code der Mod Seite. Gibt es irgend etwas, was auf den oben genannten Fehler (vielleicht ein Sicherheitsproblem) hinweist und zum sofortigen Logout aus dem Forum führt?
Vielen Dank für jede Hilfe
Code: Alles auswählen
<?php
define('IN_PHPBB', true);
$phpbb_root_path = './';
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 = 'joined';
}
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 = 'ASC';
}
//
// Memberlist sorting
//
$mode_types_text = array("Charaktername", "PVP-Rang", "Level", "Klasse", "Erster Hauptberuf (Level)", "Zweiter Hauptberuf (Level)");
$mode_types = array('name', 'rank', 'level', 'class', 'prof1lvl', 'prof2lvl');
$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 = "Charakterliste";
include($phpbb_root_path . 'includes/page_header.'.$phpEx);
$template->set_filenames(array(
'body' => 'characters_body.tpl')
);
make_jumpbox('viewforum.'.$phpEx);
$button = ($userdata['username'] != "Anonymous") ? "<form method=\"POST\" action=\"char_edit.php\"><input type=\"submit\" value=\"Charakterverwaltung\" class=\"liteoption\"></form>" : "";
$template->assign_vars(array(
'L_SELECT_SORT_METHOD' => $lang['Select_sort_method'],
'L_UNAME' => "Benutzername",
'L_CNAME' => "Charaktername",
'L_RANK' => "PVP-Rang",
'L_LEVEL' => "Level",
'L_CLASS' => "Klasse",
'L_RACE' => "Rasse",
'L_PROF' => "Hauptberufe",
'BUTTON' => $button,
'S_MODE_SELECT' => $select_sort_mode,
'S_ORDER_SELECT' => $select_sort_order,
'S_MODE_ACTION' => append_sid("characters.$phpEx"))
);
switch( $mode )
{
case 'name':
$order_by = "name $sort_order";
break;
case 'rank':
$order_by = "rank $sort_order";
break;
case 'level':
$order_by = "lvl $sort_order";
break;
case 'class':
$order_by = "class $sort_order";
break;
case 'prof1lvl':
$order_by = "prof1lvl $sort_order";
break;
case 'prof2lvl':
$order_by = "prof2lvl $sort_order";
break;
default:
$order_by = "name $sort_order";
break;
}
$sql = "SELECT ID, user_ID, name, rank, lvl, class, race, prof1, prof1lvl, prof2, prof2lvl
FROM phpbb_characters
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
{
// Start retreiving information
$user_ID_ = $row['user_ID'];
$roflcopter = $db->sql_fetchrow($db->sql_query("SELECT username FROM " . USERS_TABLE . " WHERE user_id = $user_ID_ LIMIT 1"));
$username = $roflcopter['username'];
$charname = $row['name'];
$rank = $row['rank'];
$level = $row['lvl'];
$class = $row['class'];
$race = $row['race'];
$prof1 = $row['prof1'];
$prof1lvl = $row['prof1lvl'];
$prof2 = $row['prof2'];
$prof2lvl = $row['prof2lvl'];
$row_color = ( !($i % 2) ) ? $theme['td_color1'] : $theme['td_color2'];
$row_class = ( !($i % 2) ) ? $theme['td_class1'] : $theme['td_class2'];
$template->assign_block_vars('memberrow', array(
'ROW_NUMBER' => $i + ( $start + 1 ),
'ROW_COLOR' => '#' . $row_color,
'ROW_CLASS' => $row_class,
'USERNAME' => $username,
'USERNAME_LINK' => "profile.php?mode=viewprofile&u=" . $user_ID_,
'CHARACTER' => $charname,
'RANK' => $rank,
'LVL' => $level,
'CLASS' => $class,
'RACE' => $race,
'PROFS' => $prof1 . ' ' . $prof1lvl . ', ' . $prof2 . ' ' . $prof2lvl)
);
$i++;
}
while ( $row = $db->sql_fetchrow($result) );
$db->sql_freeresult($result);
}
$template->pparse('body');
include($phpbb_root_path . 'includes/page_tail.'.$phpEx);
?>