http://members.lycos.co.uk/oldchow/phpBB2/index.php
我使用之前文章的改法
將function redirect改成以下
[php]<?php
function redirect($url)
{
global $db, $board_config;
if (!empty($db))
{
$db->sql_close();
}
$server_protocol = ($board_config['cookie_secure']) ? 'https://' : 'http://';
$server_name = preg_replace('#^\/?(.*?)\/?$#', '\1', trim($board_config['server_name']));
$server_port = ($board_config['server_port'] <> 80) ? ':' . trim($board_config['server_port']) : '';
$script_name = preg_replace('#^\/?(.*?)\/?$#', '\1', trim($board_config['script_path']));
$script_name = ($script_name == '') ? $script_name : '/' . $script_name;
//$url = preg_replace('#^\/?(.*?)\/?$#', '/\1', trim($url));
// Redirect via an HTML form for PITA webservers
if (@preg_match('/Microsoft|WebSTAR|Xitami/', getenv('SERVER_SOFTWARE')))
{
header('Refresh: 0; URL=' . $server_protocol . $server_name . $server_port . $script_name . $url);
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><meta http-equiv="refresh" content="0; url=' . $server_protocol . $server_name . $server_port . $script_name . $url . '"><title>Redirect</title></head><body><div align="center">If your browser does not support meta redirection please click <a href="' . $server_protocol . $server_name . $server_port . $script_name . $url . '">HERE</a> to be redirected</div></body></html>';
exit;
}
// Behave as per HTTP/1.1 spec for others
//header('Location: ' . $server_protocol . $server_name . $server_port . $script_name . $url);
header('Location: ' . $url);
exit;
}
?>[/php]
結果還是出現錯誤
代碼: 選擇全部
Parse error: parse error in functions.php on line 735
Warning: Cannot add header information - headers already sent by (output started at /data/members/free/tripod/uk/o/l/d/oldchow/htdocs/phpBB2/includes/functions.php:735) in sessions.php on line 182
Warning: Cannot add header information - headers already sent by (output started at /data/members/free/tripod/uk/o/l/d/oldchow/htdocs/phpBB2/includes/functions.php:735) in sessions.php on line 183
Warning: Cannot add header information - headers already sent by (output started at /data/members/free/tripod/uk/o/l/d/oldchow/htdocs/phpBB2/includes/functions.php:735) in page_header.php on line 464
Warning: Cannot add header information - headers already sent by (output started at /data/members/free/tripod/uk/o/l/d/oldchow/htdocs/phpBB2/includes/functions.php:735) in page_header.php on line 466
Warning: Cannot add header information - headers already sent by (output started at /data/members/free/tripod/uk/o/l/d/oldchow/htdocs/phpBB2/includes/functions.php:735) in page_header.php on line 467
後來又去翻其他篇文張, 改成...
[php]<?php
function redirect($url)
{
global $db, $board_config;
if (!empty($db))
{
$db->sql_close();
}
$server_protocol = ($board_config['cookie_secure']) ? 'https://' : 'http://';
$server_name = preg_replace('#^\/?(.*?)\/?$#', '\1', trim($board_config['server_name']));
$server_port = ($board_config['server_port'] <> 80) ? ':' . trim($board_config['server_port']) : '';
$script_name = preg_replace('#^\/?(.*?)\/?$#', '\1', trim($board_config['script_path']));
$script_name = ($script_name == '') ? $script_name : '/' . $script_name;
//$url = preg_replace('#^\/?(.*?)\/?$#', '/\1', trim($url));
// Redirect via an HTML form for PITA webservers
if (@preg_match('/Microsoft|WebSTAR|Xitami/', getenv('SERVER_SOFTWARE')))
{
header('Refresh: 0; URL=' . $server_protocol . $server_name . $server_port . $script_name . $url);
echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><meta http-equiv="refresh" content="0; url=' . $server_protocol . $server_name . $server_port . $script_name . $url . '"><title>Redirect</title></head><body><div align="center">If your browser does not support meta redirection please click <a href="' . $server_protocol . $server_name . $server_port . $script_name . $url . '">HERE</a> to be redirected</div></body></html>';
exit;
}
// Behave as per HTTP/1.1 spec for others
//header('Location: ' . $server_protocol . $server_name . $server_port . $script_name . $url);
header('Location: ' . $url);
exit;
}
?>[/php]
結果問題就解決了
