mirror of
https://github.com/Piwigo/Piwigo.git
synced 2026-03-28 17:42:57 +01:00
redirections modification : use of a HTML refresh page instead of header PHP
function. The purpose is to avoid redirections failure when extra characters are found in included PHP files. git-svn-id: http://piwigo.org/svn/trunk@405 68402e56-0260-453c-a942-63ccdbb3a9ee
This commit is contained in:
@@ -36,10 +36,7 @@ if ( isset( $_GET['act'] )
|
||||
// cookie deletion if exists
|
||||
setcookie( 'id', '', 0, cookie_path() );
|
||||
$url = 'category.php';
|
||||
header( 'Request-URI: '.$url );
|
||||
header( 'Content-Location: '.$url );
|
||||
header( 'Location: '.$url );
|
||||
exit();
|
||||
redirect( $url );
|
||||
}
|
||||
//-------------------------------------------------- access authorization check
|
||||
if ( isset( $_GET['cat'] ) ) check_cat_id( $_GET['cat'] );
|
||||
|
||||
@@ -42,10 +42,7 @@ if ( isset( $_POST['login'] ) )
|
||||
{
|
||||
$session_id = session_create( $_POST['username'] );
|
||||
$url = 'category.php?id='.$session_id;
|
||||
header( 'Request-URI: '.$url );
|
||||
header( 'Content-Location: '.$url );
|
||||
header( 'Location: '.$url );
|
||||
exit();
|
||||
redirect( $url );
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
// | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, |
|
||||
// | USA. |
|
||||
// +-----------------------------------------------------------------------+
|
||||
|
||||
include_once( PHPWG_ROOT_PATH .'include/functions_user.inc.php' );
|
||||
include_once( PHPWG_ROOT_PATH .'include/functions_session.inc.php' );
|
||||
include_once( PHPWG_ROOT_PATH .'include/functions_category.inc.php' );
|
||||
@@ -462,4 +463,31 @@ function pwg_debug( $string )
|
||||
$debug.= "\n";
|
||||
}
|
||||
|
||||
/**
|
||||
* Redirects to the given URL
|
||||
*
|
||||
* Note : once this function called, the execution doesn't go further
|
||||
* (presence of an exit() instruction.
|
||||
*
|
||||
* @param string $url
|
||||
* @return void
|
||||
*/
|
||||
function redirect( $url )
|
||||
{
|
||||
global $user, $template, $lang_info, $conf, $lang, $t2;
|
||||
|
||||
// $refresh, $url_link and $title are required for creating an automated
|
||||
// refresh page in header.tpl
|
||||
$refresh = 5;
|
||||
$url_link = $url;
|
||||
$title = 'redirection';
|
||||
include( PHPWG_ROOT_PATH.'include/page_header.php' );
|
||||
|
||||
$template->set_filenames( array( 'redirect' => 'redirect.tpl' ) );
|
||||
$template->pparse('redirect');
|
||||
|
||||
include( PHPWG_ROOT_PATH.'include/page_tail.php' );
|
||||
|
||||
exit();
|
||||
}
|
||||
?>
|
||||
@@ -30,40 +30,29 @@
|
||||
//
|
||||
$template->set_filenames(array('header'=>'header.tpl'));
|
||||
|
||||
$css = PHPWG_ROOT_PATH.'template/'.$user['template'].'/'.$user['template'].'.css';
|
||||
$template->assign_vars(array(
|
||||
'CONTENT_ENCODING' => $lang_info['charset'],
|
||||
'PAGE_TITLE' => $title,
|
||||
'LANG'=>$lang_info['code'],
|
||||
'DIR'=>$lang_info['direction'],
|
||||
|
||||
'T_STYLE' => $css
|
||||
));
|
||||
$css = PHPWG_ROOT_PATH.'template/'.$user['template'];
|
||||
$css.= '/'.$user['template'].'.css';
|
||||
|
||||
$template->assign_vars(
|
||||
array(
|
||||
'CONTENT_ENCODING' => $lang_info['charset'],
|
||||
'PAGE_TITLE' => $title,
|
||||
'LANG'=>$lang_info['code'],
|
||||
'DIR'=>$lang_info['direction'],
|
||||
|
||||
'T_STYLE' => $css
|
||||
));
|
||||
|
||||
// refresh
|
||||
if ( isset( $refresh ) && $refresh >0 && isset($url_link))
|
||||
if ( isset( $refresh ) and $refresh > 0 and isset( $url_link ) )
|
||||
{
|
||||
$url = $url_link.'&slideshow='.$refresh;
|
||||
$template->assign_vars(array(
|
||||
'REFRESH_TIME' => $refresh,
|
||||
'U_REFRESH' => add_session_id( $url )
|
||||
));
|
||||
$template->assign_vars(
|
||||
array(
|
||||
'REFRESH_TIME' => $refresh,
|
||||
'U_REFRESH' => add_session_id( $url_link )
|
||||
));
|
||||
$template->assign_block_vars('refresh', array());
|
||||
}
|
||||
|
||||
// Work around for "current" Apache 2 + PHP module which seems to not
|
||||
// cope with private cache control setting
|
||||
if (!empty( $_SERVER['SERVER_SOFTWARE'] )
|
||||
and strstr( $_SERVER['SERVER_SOFTWARE'], 'Apache/2'))
|
||||
{
|
||||
header( 'Cache-Control: no-cache, pre-check=0, post-check=0, max-age=0' );
|
||||
}
|
||||
else
|
||||
{
|
||||
header( 'Cache-Control: private, pre-check=0, post-check=0, max-age=0' );
|
||||
}
|
||||
header( 'Expires: ' . gmdate('D, d M Y H:i:s', time()) . ' GMT' );
|
||||
header( 'Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT' );
|
||||
|
||||
$template->pparse('header');
|
||||
?>
|
||||
|
||||
@@ -45,10 +45,7 @@ if ( !$conf['authorize_cookies'] and isset( $_COOKIE['id'] ) )
|
||||
{
|
||||
setcookie( 'id', '', 0, cookie_path() );
|
||||
$url = 'category.php';
|
||||
header( 'Request-URI: '.$url );
|
||||
header( 'Content-Location: '.$url );
|
||||
header( 'Location: '.$url );
|
||||
exit();
|
||||
redirect( $url );
|
||||
}
|
||||
|
||||
$user['has_cookie'] = false;
|
||||
|
||||
@@ -36,8 +36,5 @@ if ( $conf['access'] == 'restricted' )
|
||||
else $url = 'category';
|
||||
// redirection
|
||||
$url.= '.php';
|
||||
header( 'Request-URI: '.$url );
|
||||
header( 'Content-Location: '.$url );
|
||||
header( 'Location: '.$url );
|
||||
exit();
|
||||
redirect( $url );
|
||||
?>
|
||||
|
||||
@@ -180,9 +180,8 @@ if (@file_exists($config_file))
|
||||
|
||||
// Is phpBB already installed? Yes? Redirect to the index
|
||||
if (defined("PHPWG_INSTALLED"))
|
||||
{
|
||||
header( 'Location: index.php' );
|
||||
exit;
|
||||
{
|
||||
die( 'PhpWebGallery is already installed' );
|
||||
}
|
||||
|
||||
include(PHPWG_ROOT_PATH . 'include/constants.php');
|
||||
|
||||
12
picture.php
12
picture.php
@@ -180,10 +180,7 @@ if ( isset( $_GET['add_fav'] ) )
|
||||
// there is no favorite picture anymore we redirect the user to the
|
||||
// category page
|
||||
$url = add_session_id( $url_home );
|
||||
header( 'Request-URI: '.$url );
|
||||
header( 'Content-Location: '.$url );
|
||||
header( 'Location: '.$url );
|
||||
exit();
|
||||
redirect( $url );
|
||||
}
|
||||
else if ( $prev < 0 )
|
||||
{
|
||||
@@ -195,10 +192,7 @@ if ( isset( $_GET['add_fav'] ) )
|
||||
$url = str_replace('&', '&', $picture['prev']['url'] );
|
||||
$url = add_session_id( $url, true);
|
||||
}
|
||||
header( 'Request-URI: '.$url );
|
||||
header( 'Content-Location: '.$url );
|
||||
header( 'Location: '.$url );
|
||||
exit();
|
||||
redirect( $url );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -296,7 +290,7 @@ $refresh = 0;
|
||||
if ( isset( $_GET['slideshow'] ) and $next )
|
||||
{
|
||||
$refresh= $_GET['slideshow'];
|
||||
$url_link = $picture['next']['url'];
|
||||
$url_link = $picture['next']['url'].'&slideshow='.$refresh;
|
||||
}
|
||||
|
||||
$title_img = $picture['current']['name'];
|
||||
|
||||
@@ -120,10 +120,7 @@ if ( isset( $_POST['submit'] ) )
|
||||
// redirection
|
||||
$url = 'category.php';
|
||||
if ( !isset($_POST['create_cookie']) ) $url = add_session_id( $url,true );
|
||||
header( 'Request-URI: '.$url );
|
||||
header( 'Content-Location: '.$url );
|
||||
header( 'Location: '.$url );
|
||||
exit();
|
||||
redirect( $url );
|
||||
}
|
||||
}
|
||||
//----------------------------------------------------- template initialization
|
||||
|
||||
@@ -44,10 +44,7 @@ if ( isset( $_POST['submit'] ) )
|
||||
{
|
||||
$session_id = session_create( $_POST['login'] );
|
||||
$url = 'category.php?id='.$session_id;
|
||||
header( 'Request-URI: '.$url );
|
||||
header( 'Content-Location: '.$url );
|
||||
header( 'Location: '.$url );
|
||||
exit();
|
||||
redirect( $url );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -55,10 +55,7 @@ if ( isset( $_POST['search'] ) )
|
||||
{
|
||||
$url = 'category.php?cat=search&search='.$search.'&mode='.$_POST['mode'];
|
||||
$url = add_session_id( $url, true );
|
||||
header( 'Request-URI: '.$url );
|
||||
header( 'Content-Location: '.$url );
|
||||
header( 'Location: '.$url );
|
||||
exit();
|
||||
redirect( $url );
|
||||
}
|
||||
}
|
||||
//----------------------------------------------------- template initialization
|
||||
|
||||
Reference in New Issue
Block a user