davidg Thu Mar 8 02:39:32 2001 EDT Added files: /php4/ext/midgard session.modules.c README.session config.m4.session Log: More on session installation. Index: php4/ext/midgard/session.modules.c +++ php4/ext/midgard/session.modules.c /* * To add a PHP session module, #include its header file and * add a ps_xxx_ptr in the struct... */ #include "mod_files.h" #include "mod_mm.h" #include "mod_user.h" #if HAVE_MIDGARD_SESSION #include "../midgard/mgd_session.h" #endif static ps_module *ps_modules[] = { ps_files_ptr, ps_mm_ptr, ps_user_ptr, #if HAVE_MIDGARD_SESSION ps_midgard_ptr, #endif }; Index: php4/ext/midgard/README.session +++ php4/ext/midgard/README.session To enable the session management: - add session.c in the Makefile.in to the LTLIBRARY_SOURCES: LTLIBRARY_SOURCES = mgd_errno.c midgard.c article.c \ parameter.c attachment.c oop.c \ topic.c element.c mail.c \ group.c file.c host.c image.c member.c \ calendar.c event.c eventmember.c page.c \ pageelement.c pagelink.c person.c \ preferences.c snippet.c \ snippetdir.c style.c sitegroup.c \ preparser-parser.c preparser-scanner.c \ preparser.c session.c - copy config.m4.session over config.m4 - copy session.modules.c over ext/session/modules.c Then run: $ phpize $ ./configure --with-midgard[=/path/to/midgard] --enable-mgd-session $ make # make install Then edit your php.ini: session.save_handler = midgard session.auto_start = 0 Restart apache. To test it, insert in a Midgard page the following code: ------------------8<---------------------------------- <?php session_register ("count"); $count++; ?> Hello visitor, you have seen this page &(count); times.<p> <php? # the <?=SID?> is necessary to preserve the session id # in the case that the user has disabled cookies ?> To continue, <A HREF="&(midgard.uri);?<?=SID?>">click here</A> ------------------8<---------------------------------- Index: php4/ext/midgard/config.m4.session +++ php4/ext/midgard/config.m4.session dnl $Id: config.m4.session,v 1.1 2001/03/08 10:39:31 davidg Exp $ dnl Copyright (C) 1999 Jukka Zitting <[EMAIL PROTECTED]> dnl Copyright (C) 2000 The Midgard Project ry dnl Copyright (C) 2000 Emile Heyns, Aurora SA <[EMAIL PROTECTED]> dnl dnl This program is free software; you can redistribute it and/or modify it dnl under the terms of the GNU Lesser General Public License as published dnl by the Free Software Foundation; either version 2 of the License, or dnl (at your option) any later version. dnl dnl This program is distributed in the hope that it will be useful, dnl but WITHOUT ANY WARRANTY; without even the implied warranty of dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the dnl GNU General Public License for more details. dnl dnl You should have received a copy of the GNU General Public License dnl along with this program; if not, write to the Free Software dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA AC_PROG_YACC AC_DECL_YYTEXT AC_PROG_LEX PHP_ARG_WITH(midgard, for midgard support, [ --with-midgard Include midgard 1.4 support]) if test "$PHP_MIDGARD" != "no"; then if test "$PHP_MIDGARD" != "yes"; then AC_ADD_LIBRARY_WITH_PATH(midgard, "$PHP_MIDGARD/lib", MIDGARD_SHARED_LIBADD) AC_ADD_INCLUDE("$PHP_MIDGARD/include") else AC_ADD_LIBRARY(midgard) fi AC_DEFINE(HAVE_MIDGARD, 1, [ ]) PHP_EXTENSION(midgard, $ext_shared) dnl EEH/TODO: Add checks for apache-static compilation AC_PATH_PROG(APXS, apxs) if test -z $APXS; then AC_MSG_ERROR(apxs not found.) fi APACHE_INCLUDES=`$APXS -q INCLUDEDIR` AC_ADD_INCLUDE($APACHE_INCLUDES) AC_PATH_PROG(GLIBCONFIG, glib-config) dnl Ackackack... why do people do this? if test -z $GLIBCONFIG; then AC_PATH_PROG(GLIBCONFIG, glib12-config) fi if test -z $GLIBCONFIG; then AC_MSG_ERROR(glib-config not found. Did you install glib?) fi CFLAGS="$CFLAGS "`$GLIBCONFIG --cflags` LIBS="$LIBS "`$GLIBCONFIG --libs` LFLAGS="$LFLAGS -Pmgd -olex.yy.c" PHP_SUBST(GLIBCONFIG) AC_MSG_CHECKING(for midgard experimental functions support) AC_ARG_ENABLE(mgd-experimental, [ --enable-mgd-experimental Enable midgard 1.4.1 experimental functions support], PHP_MIDGARD_EXPERIMENTAL=[$]enableval, PHP_MIDGARD_EXPERIMENTAL="no") echo "$PHP_MIDGARD_EXPERIMENTAL"; if test "$PHP_MIDGARD_EXPERIMENTAL" != "no"; then AC_DEFINE(YOU_WANT_TO_TEST, 1, [ ]) fi AC_MSG_CHECKING(for midgard [experimental] session support) AC_ARG_ENABLE(mgd-session, [ --enable-mgd-session Enable midgard 1.4.1 [experimental] session support], PHP_MIDGARD_SESSION=[$]enableval, PHP_MIDGARD_SESSION="no") echo "$PHP_MIDGARD_SESSION"; if test "$PHP_MIDGARD_SESSION" != "no"; then AC_DEFINE(HAVE_MIDGARD_SESSION, 1, [ ]) fi fi -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]