Pagina 1 van 1

"append_sid" Wil niet werken...

Geplaatst: 08 nov 2005, 19:50
door Maus
Support template:
  • Wat is het probleem? append_sid werkt niet
    Wanneer ontstond het probleem? Tijdens een update van 2.0.13 naar 2.0.18
    Adres van je forum: http://www.kektmar.nl/forum
    Geïnstalleerde mods: Geen
    Huidige template: kektmar (eigen template)
    phpBB versie: 2.0.18
    Host: Intention
    Heb je onlangs een mod of stijl geïnstalleerd? Nee
    Heb je gezocht naar een antwoord?Ja, maar kan niets vinden
Overige opmerkingen:

Ik probeer met behulp van een link op de hoofdpagina (http://www.kektmar.nl) weer uit te loggen. Inloggen gaat goed, maar ik moet een sid hebben voor het uitloggen.

Ik heb geprobeerd om "append_sid" te gebruiken, maar op een één of ander manier kan hij deze niet ophalen. Ik gebruik de sessie van phpBB over de gehele site en dat werkt prima, maar dít wil me gewoon niet lukken...

Ik include de volgende code om de sessie over de hele site bekend te maken en heb een
"$session_start;" in de header van mijn pagina staan...
<?php
define('IN_PHPBB', true);
$phpbb_root_path = '../forum/';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
//
// Start session management
//
$userdata = session_pagestart($user_ip, 1);
init_userprefs($userdata);
//
// End session management
//
?>
Zo gebruik ik de append_sid, maar de sid wordt niet toegevoegd aan de url.

Code: Selecteer alles

print("<a href=\"".append_sid("http://www.kektmar.nl/forum/login.php?logout=true&redirect=../home/index.php")."\">Logout</a>\n");
Wat doe ik verkeerd?

Geplaatst: 08 nov 2005, 22:21
door Bee
Je maakt verkeerd gebruik van session_pagestart().

De tweede waarde moet een PAGE_NAME zijn en daarvan is een negatief nummer gedefineerd in includes/constants.php

Soms hoeft er geen sessie in het adres te staan, dan werkt het met een cookie, je weet of het werkt als je op de volgende pagina nog ingelogd bent. Het is nu een uitloglink, maar probeer het dan met iets anders.

Geplaatst: 08 nov 2005, 22:31
door Maus
Ik kan die PAGE_NAME niet vinden in dat bestand. Is dat een waarde die in dat bestand gedefinieerd staat?

Je bedoelt neem ik aan dit bestand:

Code: Selecteer alles

<?php
/***************************************************************************
 *                               constants.php
 *                            -------------------
 *   begin                : Saturday', Feb 13', 2001
 *   copyright            : ('C) 2001 The phpBB Group
 *   email                : support@phpbb.com
 *
 *   $Id: constants.php,v 1.47.2.6 2005/10/30 15:17:14 acydburn 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.
 *
 ***************************************************************************/

if ( !defined('IN_PHPBB') )
{
	die("Hacking attempt");
}

// Debug Level
//define('DEBUG', 1); // Debugging on
define('DEBUG', 1); // Debugging off


// User Levels <- Do not change the values of USER or ADMIN
define('DELETED', -1);
define('ANONYMOUS', -1);

define('USER', 0);
define('ADMIN', 1);
define('MOD', 2);


// User related
define('USER_ACTIVATION_NONE', 0);
define('USER_ACTIVATION_SELF', 1);
define('USER_ACTIVATION_ADMIN', 2);

define('USER_AVATAR_NONE', 0);
define('USER_AVATAR_UPLOAD', 1);
define('USER_AVATAR_REMOTE', 2);
define('USER_AVATAR_GALLERY', 3);


// Group settings
define('GROUP_OPEN', 0);
define('GROUP_CLOSED', 1);
define('GROUP_HIDDEN', 2);


// Forum state
define('FORUM_UNLOCKED', 0);
define('FORUM_LOCKED', 1);


// Topic status
define('TOPIC_UNLOCKED', 0);
define('TOPIC_LOCKED', 1);
define('TOPIC_MOVED', 2);
define('TOPIC_WATCH_NOTIFIED', 1);
define('TOPIC_WATCH_UN_NOTIFIED', 0);


// Topic types
define('POST_NORMAL', 0);
define('POST_STICKY', 1);
define('POST_ANNOUNCE', 2);
define('POST_GLOBAL_ANNOUNCE', 3);


// SQL codes
define('BEGIN_TRANSACTION', 1);
define('END_TRANSACTION', 2);


// Error codes
define('GENERAL_MESSAGE', 200);
define('GENERAL_ERROR', 202);
define('CRITICAL_MESSAGE', 203);
define('CRITICAL_ERROR', 204);


// Private messaging
define('PRIVMSGS_READ_MAIL', 0);
define('PRIVMSGS_NEW_MAIL', 1);
define('PRIVMSGS_SENT_MAIL', 2);
define('PRIVMSGS_SAVED_IN_MAIL', 3);
define('PRIVMSGS_SAVED_OUT_MAIL', 4);
define('PRIVMSGS_UNREAD_MAIL', 5);


// URL PARAMETERS
define('POST_TOPIC_URL', 't');
define('POST_CAT_URL', 'c');
define('POST_FORUM_URL', 'f');
define('POST_USERS_URL', 'u');
define('POST_POST_URL', 'p');
define('POST_GROUPS_URL', 'g');

// Session parameters
define('SESSION_METHOD_COOKIE', 100);
define('SESSION_METHOD_GET', 101);


// Page numbers for session handling
define('PAGE_INDEX', 0);
define('PAGE_LOGIN', -1);
define('PAGE_SEARCH', -2);
define('PAGE_REGISTER', -3);
define('PAGE_PROFILE', -4);
define('PAGE_VIEWONLINE', -6);
define('PAGE_VIEWMEMBERS', -7);
define('PAGE_FAQ', -8);
define('PAGE_POSTING', -9);
define('PAGE_PRIVMSGS', -10);
define('PAGE_GROUPCP', -11);
define('PAGE_TOPIC_OFFSET', 5000);


// Auth settings
define('AUTH_LIST_ALL', 0);
define('AUTH_ALL', 0);

define('AUTH_REG', 1);
define('AUTH_ACL', 2);
define('AUTH_MOD', 3);
define('AUTH_ADMIN', 5);

define('AUTH_VIEW', 1);
define('AUTH_READ', 2);
define('AUTH_POST', 3);
define('AUTH_REPLY', 4);
define('AUTH_EDIT', 5);
define('AUTH_DELETE', 6);
define('AUTH_ANNOUNCE', 7);
define('AUTH_STICKY', 8);
define('AUTH_POLLCREATE', 9);
define('AUTH_VOTE', 10);
define('AUTH_ATTACH', 11);


// Table names
define('CONFIRM_TABLE', $table_prefix.'confirm');
define('AUTH_ACCESS_TABLE', $table_prefix.'auth_access');
define('BANLIST_TABLE', $table_prefix.'banlist');
define('CATEGORIES_TABLE', $table_prefix.'categories');
define('CONFIG_TABLE', $table_prefix.'config');
define('DISALLOW_TABLE', $table_prefix.'disallow');
define('FORUMS_TABLE', $table_prefix.'forums');
define('GROUPS_TABLE', $table_prefix.'groups');
define('POSTS_TABLE', $table_prefix.'posts');
define('POSTS_TEXT_TABLE', $table_prefix.'posts_text');
define('PRIVMSGS_TABLE', $table_prefix.'privmsgs');
define('PRIVMSGS_TEXT_TABLE', $table_prefix.'privmsgs_text');
define('PRIVMSGS_IGNORE_TABLE', $table_prefix.'privmsgs_ignore');
define('PRUNE_TABLE', $table_prefix.'forum_prune');
define('RANKS_TABLE', $table_prefix.'ranks');
define('SEARCH_TABLE', $table_prefix.'search_results');
define('SEARCH_WORD_TABLE', $table_prefix.'search_wordlist');
define('SEARCH_MATCH_TABLE', $table_prefix.'search_wordmatch');
define('SESSIONS_TABLE', $table_prefix.'sessions');
define('SESSIONS_KEYS_TABLE', $table_prefix.'sessions_keys');
define('SMILIES_TABLE', $table_prefix.'smilies');
define('THEMES_TABLE', $table_prefix.'themes');
define('THEMES_NAME_TABLE', $table_prefix.'themes_name');
define('TOPICS_TABLE', $table_prefix.'topics');
define('TOPICS_WATCH_TABLE', $table_prefix.'topics_watch');
define('USER_GROUP_TABLE', $table_prefix.'user_group');
define('USERS_TABLE', $table_prefix.'users');
define('WORDS_TABLE', $table_prefix.'words');
define('VOTE_DESC_TABLE', $table_prefix.'vote_desc');
define('VOTE_RESULTS_TABLE', $table_prefix.'vote_results');
define('VOTE_USERS_TABLE', $table_prefix.'vote_voters');

?>
Wat bedoel je ermee dat ik iets anders moet proberen? Het sessie gedeelte werkt helemaal en het uitloggen via de link ook bij versie 2.0.13 , maar sinds een update van vanmiddag helaas niet meer... Hoe kan ik dit oplossen?

Geplaatst: 08 nov 2005, 22:54
door Bee

Code: Selecteer alles

define('PAGE_GROUPCP', -11); 
Dat bijvoorbeeld. Als je pagina Drollenverzameling heet maak je bijvoorbeeld een

Code: Selecteer alles

define('PAGE_DROLZAM', -12); 
en gebruik je:

Code: Selecteer alles

$userdata = session_pagestart($user_ip, PAGE_DROLZAM); 

Geplaatst: 08 nov 2005, 22:58
door Maus
Bee schreef:Drollenverzameling
Ow je hebt gekeken dus... ;)

Nou ik heb hem maar PAGE_KEKTMAR genoemd met als waarde -12, maar dat lost het probleem nog niet op met die "append_sid". Hij willum er gewoon niet aanplakken...

Geplaatst: 08 nov 2005, 23:02
door Bee
Ik zei ook al, er hoeft niet altijd een sessie id in de link te staan, het kan ook in een cookie staan. Op bijv. phpbb.nl heb ik geen sessie in links staan.

Geplaatst: 08 nov 2005, 23:06
door Maus
Okee, duidelijk...

Ik begreep dat gedeelte van je reply niet helemaal, sorry...

Dus je zegt dat die sid er niet bij hoeft? Ik was nog iets vergeten te zeggen. Ik krijg de volgende melding als ik op de uitloglink klik (met 2.0.13 was dit nooit het geval):

Code: Selecteer alles

Algemene Fout
  
Invalid_session
Alvast bedankt trouwens, want je steekt behoorlijk wat tijd in m'n probleem...

Geplaatst: 09 nov 2005, 08:05
door Bee
Maak je gebruik van een template? En is page_header.php geincluded? Daarin zit een standaard uitloglink in.