sandrob57 Posted March 13, 2007 Share Posted March 13, 2007 I am having header problems around my website, and I need to get this resolved. Here is an example: Warning: Cannot modify header information - headers already sent by (output started at /home/lunarwar/public_html/subheader.php:43) in /home/lunarwar/public_html/maincore.php on line 247 Why do I keep getting this. If I want to do things, like CG images, everything gets messed up! Help! Yes, I disabled output buffering so I could see these errors. Here is my subheader.php: <?php /*---------------------------------------------------+ | PHP-Fusion 6 Content Management System +----------------------------------------------------+ | Copyright © 2002 - 2006 Nick Jones | http://www.php-fusion.co.uk/ +----------------------------------------------------+ | Released under the terms & conditions of v2 of the | GNU General Public License. For details refer to | the included gpl.txt file or visit http://gnu.org +----------------------------------------------------*/ if (!defined("IN_FUSION")) { header("Location: index.php"); exit; } require_once THEME."theme.php"; if ($settings['maintenance'] == "1" && !iSUPERADMIN) fallback(BASEDIR."maintenance.php"); if (iMEMBER) $result = dbquery("UPDATE ".$db_prefix."users SET user_lastvisit='".time()."', user_ip='".USER_IP."' WHERE user_id='".$userdata['user_id']."'"); header ("Cache-Control: no-cache"); // Should not be cached echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\"> <html> <head> <script language='javascript' type='text/javascript'> var win=null; function NewWindow(mypage,myname,w,h,scroll,pos){ if(pos=='random'){LeftPosition=(screen.width)?Math.floor(Math.random()*(screen.width-w)):100;TopPosition=(screen.height)?Math.floor(Math.random()*((screen.height-h)-75)):100;} if(pos=='center'){LeftPosition=(screen.width)?(screen.width-w)/2:100;TopPosition=(screen.height)?(screen.height-h)/2:100;} else if((pos!='center' && pos!='random') || pos==null){LeftPosition=0;TopPosition=20} settings='width='+w+',height='+h+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',location=no,directories=no,status=no,menubar=no,toolbar=no,resizable=no'; win=window.open(mypage,myname,settings);} </script> <link rel='shortcut icon' href='".BASEDIR."favicon.ico' type='image/x-icon' /> <link rel='icon' href='".BASEDIR."favicon.ico' type='image/png' /> <title>".$settings['sitename']."</title> <meta http-equiv='Content-Type' content='text/html; charset=".$locale['charset']."'> <meta name='description' content='".$settings['description']."'> <meta name='keywords' content='".$settings['keywords']."'> <link rel='stylesheet' href='".THEME."styles.css' type='text/css'> <script type='text/javascript' src='".INCLUDES."jscript.js'></script> </head> <body bgcolor='$body_bg' text='$body_text'>\n"; render_header("<img src='".BASEDIR.$settings['sitebanner']."' alt='".$settings['sitename']."' title='".$settings['sitename']."'>"); if ($userdata['user_theme'] == 'Blind'){ echo "<br /><div align=center>You are using the colorblind theme. This feature is provided for people who cannot use the normal theme due to color blindness. <b>The color blind theme is NOT fully supported</b>, meaning most images will still have blue backgrounds as they were designed for the normal (blue) theme. We recommend you use the normal theme if possible.</div><br />"; } if (iMEMBER){ include BASEDIR."wars/war_check.php"; include BASEDIR."improvements/userimp.php"; $update_self_str = 'yes'; include BASEDIR."scripts/formula_strength.php"; } ?> Link to comment https://forums.phpfreaks.com/topic/42551-that-damn-header/ Share on other sites More sharing options...
Lumio Posted March 13, 2007 Share Posted March 13, 2007 /home/lunarwar/public_html/maincore.php on line 247 what's about that? what is that line about and all around that? Link to comment https://forums.phpfreaks.com/topic/42551-that-damn-header/#findComment-206468 Share on other sites More sharing options...
sandrob57 Posted March 13, 2007 Author Share Posted March 13, 2007 /home/lunarwar/public_html/maincore.php on line 247 what's about that? what is that line about and all around that? That's the core file, that connects to the database and sets up functions. It is included on every page. Link to comment https://forums.phpfreaks.com/topic/42551-that-damn-header/#findComment-206470 Share on other sites More sharing options...
Lumio Posted March 13, 2007 Share Posted March 13, 2007 can you view me that part of the file and all above? Link to comment https://forums.phpfreaks.com/topic/42551-that-damn-header/#findComment-206479 Share on other sites More sharing options...
sandrob57 Posted March 13, 2007 Author Share Posted March 13, 2007 can you view me that part of the file and all above? maincore.php <?php /*---------------------------------------------------+ | PHP-Fusion 6 Content Management System +----------------------------------------------------+ | Copyright © 2002 - 2006 Nick Jones | http://www.php-fusion.co.uk/ +----------------------------------------------------+ | Released under the terms & conditions of v2 of the | GNU General Public License. For details refer to | the included gpl.txt file or visit http://gnu.org +----------------------------------------------------*/ if (eregi("maincore.php", $_SERVER['PHP_SELF'])) die(); $start_time = microtime(); // If register_globals is turned off, extract super globals (php 4.2.0+) if (ini_get('register_globals') != 1) { if ((isset($_POST) == true) && (is_array($_POST) == true)) extract($_POST, EXTR_OVERWRITE); if ((isset($_GET) == true) && (is_array($_GET) == true)) extract($_GET, EXTR_OVERWRITE); } // Prevent any possible XSS attacks via $_GET. foreach ($_GET as $check_url) { if ((eregi("<[^>]*script*\"?[^>]*>", $check_url)) || (eregi("<[^>]*object*\"?[^>]*>", $check_url)) || (eregi("<[^>]*iframe*\"?[^>]*>", $check_url)) || (eregi("<[^>]*applet*\"?[^>]*>", $check_url)) || (eregi("<[^>]*meta*\"?[^>]*>", $check_url)) || (eregi("<[^>]*style*\"?[^>]*>", $check_url)) || (eregi("<[^>]*form*\"?[^>]*>", $check_url)) || (eregi("\([^>]*\"?[^)]*\)", $check_url)) || (eregi("\"", $check_url))) { die (); } } unset($check_url); // Start Output Buffering ob_start(); // Locate config.php and set the basedir path $folder_level = ""; while (!file_exists($folder_level."config.php")) { $folder_level .= "../"; } require_once $folder_level."config.php"; define("BASEDIR", $folder_level); // If config.php is empty, activate setup.php script if (!isset($db_name)) redirect("setup.php"); // Establish mySQL database connection $link = dbconnect($db_host, $db_user, $db_pass, $db_name); // Create Validation image if $vimage is set and die(); if (isset($vimage)) { $check_url = (isset($_SERVER['REQUEST_URI']) ? $_SERVER['REQUEST_URI'] : $_SERVER['SCRIPT_NAME']); if (eregi("register.php", $check_url) && preg_match("/^[0-9a-z]{32}$/", $vimage)) { $vres = dbquery("SELECT * FROM ".$db_prefix."vcode WHERE vcode_2='$vimage'"); if (dbrows($vres)) { $vdata = dbarray($vres); $imf = rand(3,5); $imx = rand(15,40); $imy = rand(2,7); $im = ImageCreateFromJPEG("images/validate_bg.jpg"); $tcolor = ImageColorAllocate($im, 40, 40, 40); Header("Content-type: image/jpeg"); ImageString ($im, $imf, $imx, $imy, $vdata['vcode_1'], $tcolor); ImageJPEG($im, '', 80); ImageDestroy($im); } } die(); break; } // Fetch the Site Settings from the database and store them in the $settings variable $settings = dbarray(dbquery("SELECT * FROM ".$db_prefix."settings")); // Common definitions $_SERVER['PHP_SELF'] = htmlspecialchars(descript($_SERVER['PHP_SELF']), ENT_QUOTES); $PHP_SELF = htmlspecialchars(descript($_SERVER['PHP_SELF']), ENT_QUOTES); define("IN_FUSION", TRUE); define("FUSION_REQUEST", isset($_SERVER['REQUEST_URI']) && $_SERVER['REQUEST_URI'] != "" ? $_SERVER['REQUEST_URI'] : $_SERVER['SCRIPT_NAME']); define("FUSION_QUERY", isset($_SERVER['QUERY_STRING']) ? $_SERVER['QUERY_STRING'] : ""); define("FUSION_SELF", basename($_SERVER['PHP_SELF'])); define("USER_IP", $_SERVER['REMOTE_ADDR']); define("QUOTES_GPC", (ini_get('magic_quotes_gpc') ? TRUE : FALSE)); // Path definitions define("ADMIN", BASEDIR."administration/"); define("IMAGES", BASEDIR."images/"); define("IMAGES_A", IMAGES."articles/"); define("IMAGES_N", IMAGES."news/"); define("IMAGES_NC", IMAGES."news_cats/"); define("INCLUDES", BASEDIR."includes/"); define("LOCALE", BASEDIR."locale/"); define("LOCALESET", $settings['locale']."/"); define("FORUM", BASEDIR."forum/"); define("INFUSIONS", BASEDIR."infusions/"); define("PHOTOS", IMAGES."photoalbum/"); define("THEMES", BASEDIR."themes/"); // MySQL database functions function dbquery($query) { $result = @mysql_query($query); if (!$result) { echo mysql_error(); return false; } else { return $result; } } function dbcount($field,$table,$conditions="") { $cond = ($conditions ? " WHERE ".$conditions : ""); $result = @mysql_query("SELECT Count".$field." FROM ".DB_PREFIX.$table.$cond); if (!$result) { echo mysql_error(); return false; } else { $rows = mysql_result($result, 0); return $rows; } } function dbresult($query, $row) { $result = @mysql_result($query, $row); if (!$result) { echo mysql_error(); return false; } else { return $result; } } function dbrows($query) { $result = @mysql_num_rows($query); return $result; } function dbarray($query) { $result = @mysql_fetch_assoc($query); if (!$result) { echo mysql_error(); return false; } else { return $result; } } function dbarraynum($query) { $result = @mysql_fetch_row($query); if (!$result) { echo mysql_error(); return false; } else { return $result; } } function dbconnect($db_host, $db_user, $db_pass, $db_name) { $db_connect = @mysql_connect($db_host, $db_user, $db_pass); $db_select = @mysql_select_db($db_name); if (!$db_connect) { die("<div style='font-family:Verdana;font-size:11px;text-align:center;'><b>Unable to establish connection to MySQL</b><br>".mysql_errno()." : ".mysql_error()."</div>"); } elseif (!$db_select) { die("<div style='font-family:Verdana;font-size:11px;text-align:center;'><b>Unable to select MySQL database</b><br>".mysql_errno()." : ".mysql_error()."</div>"); } } // Initialise the $locale array $locale = array(); // Load the Global language file include LOCALE.LOCALESET."global.php"; // Check if users full or partial ip is blacklisted $sub_ip1 = substr(USER_IP,0,strlen(USER_IP)-strlen(strrchr(USER_IP,"."))); $sub_ip2 = substr($sub_ip1,0,strlen($sub_ip1)-strlen(strrchr($sub_ip1,"."))); if (dbcount("(*)", "blacklist", "blacklist_ip='".USER_IP."' OR blacklist_ip='$sub_ip1' OR blacklist_ip='$sub_ip2'")) { header("Location: http://www.google.com/"); exit; } // PHP-Fusion user cookie functions if (!isset($_COOKIE['fusion_visited'])) { $result=dbquery("UPDATE ".$db_prefix."settings SET counter=counter+1"); setcookie("fusion_visited", "yes", time() + 31536000, "/", "", "0"); } if (isset($_POST['login'])) { $user_pass = md5($_POST['user_pass']); $user_name = preg_replace(array("/\=/","/\#/","/\sOR\s/"), "", stripinput($_POST['user_name'])); $result = dbquery("SELECT * FROM ".$db_prefix."users WHERE user_name='$user_name' AND user_password='$user_pass'"); if (dbrows($result) != 0) { $data = dbarray($result); $cookie_value = $data['user_id'].".".$data['user_password']; if ($data['user_status'] == 0) { $cookie_exp = isset($_POST['remember_me']) ? time() + 3600*24*30 : time() + 3600*3; header("P3P: CP='NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM'"); setcookie("fusion_user", $cookie_value, $cookie_exp, "/", "", "0"); redirect(BASEDIR."setuser.php?user=".$data['user_name'], "script"); } elseif ($data['user_status'] == 1) { redirect(BASEDIR."setuser.php?error=1", "script"); } elseif ($data['user_status'] == 2) { redirect(BASEDIR."setuser.php?error=2", "script"); } } else { redirect(BASEDIR."setuser.php?error=3"); } } if (isset($_COOKIE['fusion_user'])) { $cookie_vars = explode(".", $_COOKIE['fusion_user']); $cookie_1 = isNum($cookie_vars['0']) ? $cookie_vars['0'] : "0"; $cookie_2 = (preg_match("/^[0-9a-z]{32}$/", $cookie_vars['1']) ? $cookie_vars['1'] : ""); $result = dbquery("SELECT * FROM ".$db_prefix."users WHERE user_id='$cookie_1' AND user_password='$cookie_2'"); unset($cookie_vars,$cookie_1,$cookie_2); if (dbrows($result) != 0) { $userdata = dbarray($result); if ($userdata['user_status'] == 0) { if ($userdata['user_theme'] != "Default" && file_exists(THEMES.$userdata['user_theme']."/theme.php")) { define("THEME", THEMES.$userdata['user_theme']."/"); } else { define("THEME", THEMES.$settings['theme']."/"); } if ($userdata['user_offset'] <> 0) { $settings['timeoffset'] = $settings['timeoffset'] + $userdata['user_offset']; } if (empty($_COOKIE['fusion_lastvisit'])) { setcookie("fusion_lastvisit", $userdata['user_lastvisit'], time() + 3600, "/", "", "0"); $lastvisited = $userdata['user_lastvisit']; } else { $lastvisited = $_COOKIE['fusion_lastvisit']; } } else { header("P3P: CP='NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM'"); setcookie("fusion_user", "", time() - 7200, "/", "", "0"); setcookie("fusion_lastvisit", "", time() - 7200, "/", "", "0"); redirect(BASEDIR."index.php", "script"); } } else { header("P3P: CP='NOI ADM DEV PSAi COM NAV OUR OTRo STP IND DEM'"); setcookie("fusion_user", "", time() - 7200, "/", "", "0"); setcookie("fusion_lastvisit", "", time() - 7200, "/", "", "0"); redirect(BASEDIR."index.php", "script"); } } else { define("THEME", THEMES.$settings['theme']."/"); $userdata = ""; $userdata['user_level'] = 0; $userdata['user_rights'] = ""; $userdata['user_groups'] = ""; } // Redirect browser using the header function function redirect($location, $type="header") { if ($type == "header") { header("Location: ".$location); } else { echo "<script type='text/javascript'>document.location.href='".$location."'</script>\n"; } } // Fallback to safe area in event of unauthorised access function fallback($location) { header("Location: ".$location); exit; } // Strip Input Function, prevents HTML in unwanted places function stripinput($text) { if (QUOTES_GPC) $text = stripslashes($text); $search = array("\"", "'", "\\", '\"', "\'", "<", ">", " "); $replace = array(""", "'", "\", """, "'", "<", ">", " "); $text = str_replace($search, $replace, $text); return $text; } // stripslash function, only stripslashes if magic_quotes_gpc is on function stripslash($text) { if (QUOTES_GPC) $text = stripslashes($text); return $text; } // stripslash function, add correct number of slashes depending on quotes_gpc function addslash($text) { if (!QUOTES_GPC) { $text = addslashes(addslashes($text)); } else { $text = addslashes($text); } return $text; } // htmlentities is too agressive so we use this function function phpentities($text) { $search = array("&", "\"", "'", "\\", "<", ">"); $replace = array("&", """, "'", "\", "<", ">"); $text = str_replace($search, $replace, $text); return $text; } // Trim a line of text to a preferred length function trimlink($text, $length) { $dec = array("\"", "'", "\\", '\"', "\'", "<", ">"); $enc = array(""", "'", "\", """, "'", "<", ">"); $text = str_replace($enc, $dec, $text); if (strlen($text) > $length) $text = substr($text, 0, ($length-3))."..."; $text = str_replace($dec, $enc, $text); return $text; } // Validate numeric input function isNum($value) { return (preg_match("/^[0-9]+$/", $value)); } // Parse smiley bbcode into HTML images function parsesmileys($message) { $smiley = array( //new smilies "#\:confused\:#si" => "<img src='".IMAGES."smiley/yellow/confused.gif' alt='smiley'>", "#\:lol\:#si" => "<img src='".IMAGES."smiley/yellow/lol.gif' alt='smiley'>", "#\:doubt\:#si" => "<img src='".IMAGES."smiley/yellow/doubt.gif' alt='smiley'>", "#\:redface\:#si" => "<img src='".IMAGES."smiley/yellow/redface.gif' alt='smiley'>", "#\:evil\:#si" => "<img src='".IMAGES."smiley/yellow/evil.gif' alt='smiley'>", //nintendo set "#\:1up\:#si" => "<img src='".IMAGES."smiley/mario/1upmush.gif' alt='smiley'>", "#\:boo\:#si" => "<img src='".IMAGES."smiley/mario/boo.gif' alt='smiley'>", "#\:dk\:#si" => "<img src='".IMAGES."smiley/mario/dk.gif' alt='smiley'>", "#\:drmario\:#si" => "<img src='".IMAGES."smiley/mario/drmario.gif' alt='smiley'>", "#\:gameboy\:#si" => "<img src='".IMAGES."smiley/mario/gameboy.gif' alt='smiley'>", "#\:goomba\:#si" => "<img src='".IMAGES."smiley/mario/goomba.gif' alt='smiley'>", "#\:luigi\:#si" => "<img src='".IMAGES."smiley/mario/luigi.gif' alt='smiley'>", "#\:mario\:#si" => "<img src='".IMAGES."smiley/mario/mario.gif' alt='smiley'>", "#\:mush\:#si" => "<img src='".IMAGES."smiley/mario/mush.gif' alt='smiley'>", "#\:n64\:#si" => "<img src='".IMAGES."smiley/mario/n64.gif' alt='smiley'>", "#\:poisonmush\:#si" => "<img src='".IMAGES."smiley/mario/poisonmush.gif' alt='smiley'>", "#\:snes\:#si" => "<img src='".IMAGES."smiley/mario/snes.gif' alt='smiley'>", "#\:toad\:#si" => "<img src='".IMAGES."smiley/mario/toad.gif' alt='smiley'>", "#\:waluigi\:#si" => "<img src='".IMAGES."smiley/mario/waluigi.gif' alt='smiley'>", "#\:wario\:#si" => "<img src='".IMAGES."smiley/mario/wario.gif' alt='smiley'>", "#\:yoshi\:#si" => "<img src='".IMAGES."smiley/mario/yoshi.gif' alt='smiley'>", //old smilies "#\:\)#si" => "<img src='".IMAGES."smiley/smile.gif' alt='smiley'>", "#\;\)#si" => "<img src='".IMAGES."smiley/wink.gif' alt='smiley'>", "#\:\(#si" => "<img src='".IMAGES."smiley/sad.gif' alt='smiley'>", "#\:\|#si" => "<img src='".IMAGES."smiley/frown.gif' alt='smiley'>", "#\#si" => "<img src='".IMAGES."smiley/shock.gif' alt='smiley'>", "#\#si" => "<img src='".IMAGES."smiley/pfft.gif' alt='smiley'>", "#b\)#si" => "<img src='".IMAGES."smiley/cool.gif' alt='smiley'>", "#\#si" => "<img src='".IMAGES."smiley/grin.gif' alt='smiley'>", "#\:@#si" => "<img src='".IMAGES."smiley/angry.gif' alt='smiley'>" ); foreach($smiley as $key=>$smiley_img) $message = preg_replace($key, $smiley_img, $message); return $message; } // Show smiley icons in comments, forum and other post pages function displaysmileys($textarea) { $smiles = ""; $smileys = array ( "" => "smile.gif", "" => "wink.gif", ":|" => "frown.gif", "" => "sad.gif", "" => "shock.gif", "" => "pfft.gif", "B)" => "cool.gif", "" => "grin.gif", ":@" => "angry.gif", "" => "yellow/confused.gif", ":doubt:" => "yellow/doubt.gif", "" => "yellow/lol.gif", ":redface:" => "yellow/redface.gif", ":evil:" => "yellow/evil.gif" ); foreach($smileys as $key=>$smiley) $smiles .= "<img src='".IMAGES."smiley/$smiley' alt='smiley' onClick=\"insertText('$textarea', '$key');\">\n"; return $smiles; } // Parse bbcode into HTML code function parseubb($text) { /*MY CUSTOM BB CODE*/ //You Tube $text = preg_replace('#\[youtube\](.*?)\[/youtube\]#si', '<object width="425" height="350"><param name="movie" value="http://www.youtube.com/v/\1"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/\1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed></object>', $text); /*MY CUSTOM BB CODE*/ $text = preg_replace('#\[b\](.*?)\[/b\]#si', '<b>\1</b>', $text); $text = preg_replace('#\[i\](.*?)\[/i\]#si', '<i>\1</i>', $text); $text = preg_replace('#\[u\](.*?)\[/u\]#si', '<u>\1</u>', $text); $text = preg_replace('#\[center\](.*?)\[/center\]#si', '<center>\1</center>', $text); $text = preg_replace('#\[url\]([\r\n]*)(http://|ftp://|https://|ftps://)([^\s\'\";\+]*?)([\r\n]*)\[/url\]#si', '<a href=\'\2\3\' target=\'_blank\'>\2\3</a>', $text); $text = preg_replace('#\[url\]([\r\n]*)([^\s\'\";\+]*?)([\r\n]*)\[/url\]#si', '<a href=\'http://\2\' target=\'_blank\'>\2</a>', $text); $text = preg_replace('#\[url=([\r\n]*)(http://|ftp://|https://|ftps://)([^\s\'\";\+]*?)\](.*?)([\r\n]*)\[/url\]#si', '<a href=\'\2\3\' target=\'_blank\'>\4</a>', $text); $text = preg_replace('#\[url=([\r\n]*)([^\s\'\";\+]*?)\](.*?)([\r\n]*)\[/url\]#si', '<a href=\'http://\2\' target=\'_blank\'>\3</a>', $text); $text = preg_replace('#\[mail\]([\r\n]*)([^\s\'\";:\+]*?)([\r\n]*)\[/mail\]#si', '<a href=\'mailto:\2\'>\2</a>', $text); $text = preg_replace('#\[mail=([\r\n]*)([^\s\'\";:\+]*?)\](.*?)([\r\n]*)\[/mail\]#si', '<a href=\'mailto:\2\'>\2</a>', $text); $text = preg_replace('#\[small\](.*?)\[/small\]#si', '<span class=\'small\'>\1</span>', $text); $text = preg_replace('#\[color=(black|blue|brown|cyan|gray|green|lime|maroon|navy|olive|orange|purple|red|silver|violet|white|yellow)\](.*?)\[/color\]#si', '<span style=\'color:\1\'>\2</span>', $text); $text = preg_replace('#\[flash width=([0-9]*?) height=([0-9]*?)\]([^\s\'\";:\+]*?)(\.swf)\[/flash\]#si', '<object classid=\'clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\' codebase=\'http://active.macromedia.com/flash6/cabs/swflash.cab#version=6,0,0,0\' id=\'\3\4\' width=\'\1\' height=\'\2\'><param name=movie value=\'\3\4\'><param name=\'quality\' value=\'high\'><param name=\'bgcolor\' value=\'#ffffff\'><embed src=\'\3\4\' quality=\'high\' bgcolor=\'#ffffff\' width=\'\1\' height=\'\2\' type=\'application/x-shockwave-flash\' pluginspage=\'http://www.macromedia.com/go/getflashplayer\'></embed></object>', $text); $text = preg_replace("#\[img\]((http|ftp|https|ftps)://)(.*?)(\.(jpg|jpeg|gif|png|JPG|JPEG|GIF|PNG))\[/img\]#sie","'<img src=\'\\1'.str_replace(array('.php','?','&','='),'','\\3').'\\4\' style=\'border:0px\'>'",$text); $qcount = substr_count($text, "[quote]"); $ccount = substr_count($text, "[code]"); for ($i=0;$i < $qcount;$i++) $text = preg_replace('#\[quote\](.*?)\[/quote\]#si', '<div class=\'quote\'>\1</div>', $text); for ($i=0;$i < $ccount;$i++) $text = preg_replace('#\[code\](.*?)\[/code\]#si', '<div class=\'quote\' style=\'width:400px;white-space:nowrap;overflow:auto\'><code style=\'white-space:nowrap\'>\1<br><br><br></code></div>', $text); $text = descript($text,false); return $text; } // This function sanitises news & article submissions function descript($text,$striptags=true) { // Convert problematic ascii characters to their true values $search = array("40","41","58","65","66","67","68","69","70", "71","72","73","74","75","76","77","78","79","80","81", "82","83","84","85","86","87","88","89","90","97","98", "99","100","101","102","103","104","105","106","107", "108","109","110","111","112","113","114","115","116", "117","118","119","120","121","122" ); $replace = array("(",")",":","a","b","c","d","e","f","g","h", "i","j","k","l","m","n","o","p","q","r","s","t","u", "v","w","x","y","z","a","b","c","d","e","f","g","h", "i","j","k","l","m","n","o","p","q","r","s","t","u", "v","w","x","y","z" ); $entities = count($search); for ($i=0;$i < $entities;$i++) $text = preg_replace("#(&\#)(0*".$search[$i]."+);*#si", $replace[$i], $text); // the following is based on code from bitflux (http://blog.bitflux.ch/wiki/) // Kill hexadecimal characters completely $text = preg_replace('#(&\#x)([0-9A-F]+);*#si', "", $text); // remove any attribute starting with "on" or xmlns $text = preg_replace('#(<[^>]+[\\"\'\s])(onmouseover|onmousedown|onmouseup|onmouseout|onmousemove|onclick|ondblclick|onload|xmlns)[^>]*>#iU', ">", $text); // remove javascript: and vbscript: protocol $text = preg_replace('#([a-z]*)=([\`\'\"]*)script:#iU', '$1=$2nojscript...', $text); $text = preg_replace('#([a-z]*)=([\`\'\"]*)javascript:#iU', '$1=$2nojavascript...', $text); $text = preg_replace('#([a-z]*)=([\'\"]*)vbscript:#iU', '$1=$2novbscript...', $text); //<span style="width: expression(alert('Ping!'));"></span> (only affects ie...) $text = preg_replace('#(<[^>]+)style=([\`\'\"]*).*expression\([^>]*>#iU', "$1>", $text); $text = preg_replace('#(<[^>]+)style=([\`\'\"]*).*behaviour\([^>]*>#iU', "$1>", $text); if ($striptags) { do { $thistext = $text; $text = preg_replace('#</*(applet|meta|xml|blink|link|style|script|embed|object|iframe|frame|frameset|ilayer|layer|bgsound|title|base)[^>]*>#i', "", $text); } while ($thistext != $text); } return $text; } // Scan image files for malicious code function verify_image($file) { $txt = file_get_contents($file); $image_safe = true; if (preg_match("#([a-z]*)=([\`\'\"]*)script:#iU", $txt)) $image_safe = false; if (preg_match("#([a-z]*)=([\`\'\"]*)javascript:#iU", $txt)) $image_safe = false; if (preg_match("#([a-z]*)=([\'\"]*)vbscript:#iU", $txt)) $image_safe = false; if (preg_match("#(<[^>]+)style=([\`\'\"]*).*expression\([^>]*>#iU", $txt)) $image_safe = false; if (preg_match("#(<[^>]+)style=([\`\'\"]*).*behaviour\([^>]*>#iU", $txt)) $image_safe = false; if (preg_match("#</*(applet|link|style|script|iframe|frame|frameset)[^>]*>#i", $txt)) $image_safe = false; return $image_safe; } // Replace offensive words with the defined replacement word function censorwords($text) { global $settings; if ($settings['bad_words_enabled'] == "1" && $settings['bad_words'] != "" ) { $word_list = explode("\r\n", $settings['bad_words']); for ($i=0;$i < count($word_list);$i++) { if ($word_list[$i] != "") $text = preg_replace("/".$word_list[$i]."/si", $settings['bad_word_replace'], $text); } } return $text; } // Display the user's level function getuserlevel($userlevel) { global $locale; if ($userlevel==101) { return $locale['user1']; } elseif ($userlevel==102) { return $locale['user2']; } elseif ($userlevel==103) { return $locale['user3']; } } // Check if Administrator has correct rights assigned function checkrights($right) { if (iADMIN && in_array($right, explode(".", iUSER_RIGHTS))) { return true; } else { return false; } } // Check if user is assigned to the specified user group function checkgroup($group) { if (iSUPERADMIN && ($group == "0" || $group == "101" || $group == "102" || $group == "103")) { return true; } elseif (iADMIN && ($group == "0" || $group == "101" || $group == "102")) { return true; } elseif (iMEMBER && ($group == "0" || $group == "101")) { return true; } elseif (iGUEST && $group == "0") { return true; } elseif (iMEMBER && in_array($group, explode(".", iUSER_GROUPS))) { return true; } else { return false; } } // Compile access levels & user group array function getusergroups() { global $locale; $groups_array = array( array("0", $locale['user0']), array("101", $locale['user1']), array("102", $locale['user2']), array("103", $locale['user3']) ); $gsql = dbquery("SELECT group_id,group_name FROM ".DB_PREFIX."user_groups"); while ($gdata = dbarray($gsql)) { array_push($groups_array, array($gdata['group_id'], $gdata['group_name'])); } return $groups_array; } // Get the name of the access level or user group function getgroupname($group) { global $locale; if ($group == "0") { return $locale['user0']; } elseif ($group == "101") { return $locale['user1']; } elseif ($group == "102") { return $locale['user2']; } elseif ($group == "103") { return $locale['user3']; } else { $gsql = dbquery("SELECT group_id,group_name FROM ".DB_PREFIX."user_groups WHERE group_id='$group'"); if (dbrows($gsql)!=0) { $gdata = dbarray($gsql); return $gdata['group_name']; } else { return "N/A"; } } } function groupaccess($field) { if (iSUPERADMIN) { $res = "($field='0' OR $field='101' OR $field='102' OR $field='103'"; } elseif (iADMIN) { $res = "($field='0' OR $field='101' OR $field='102'"; } elseif (iMEMBER) { $res = "($field='0' OR $field='101'"; } elseif (iGUEST) { $res = "($field='0'"; } if (iUSER_GROUPS != "") $res .= " OR $field='".str_replace(".", "' OR $field='", iUSER_GROUPS)."'"; $res .= ")"; return $res; } // Create a list of files or folders and store them in an array function makefilelist($folder, $filter, $sort=true, $type="files") { $res = array(); $filter = explode("|", $filter); $temp = opendir($folder); while ($file = readdir($temp)) { if ($type == "files" && !in_array($file, $filter)) { if (!is_dir($folder.$file)) $res[] = $file; } elseif ($type == "folders" && !in_array($file, $filter)) { if (is_dir($folder.$file)) $res[] = $file; } } closedir($temp); if ($sort) sort($res); return $res; } // Create a selection list from an array created by makefilelist() function makefileopts($files, $selected="") { $res = ""; for ($i=0;$i < count($files);$i++) { $sel = ($selected == $files[$i] ? " selected" : ""); $res .= "<option value='".$files[$i]."'$sel>".$files[$i]."</option>\n"; } return $res; } // Universal page pagination function by CrappoMan function makepagenav($start,$count,$total,$range=0,$link=""){ global $locale; if ($link == "") $link = FUSION_SELF."?"; $res=""; $pg_cnt=ceil($total / $count); if ($pg_cnt > 1) { $idx_back = $start - $count; $idx_next = $start + $count; $cur_page=ceil(($start + 1) / $count); $res.="<table cellspacing='1' cellpadding='1' border='0' class='tbl-border'>\n<tr>\n"; $res.="<td class='tbl2'><span class='small'>".$locale['052']."$cur_page".$locale['053']."$pg_cnt</span></td>\n"; if ($idx_back >= 0) { if ($cur_page > ($range + 1)) $res.="<td class='tbl2'><a class='small' href='$link"."rowstart=0'><<</a></td>\n"; $res.="<td class='tbl2'><a class='small' href='$link"."rowstart=$idx_back'><</a></td>\n"; } $idx_fst=max($cur_page - $range, 1); $idx_lst=min($cur_page + $range, $pg_cnt); if ($range==0) { $idx_fst = 1; $idx_lst=$pg_cnt; } for($i=$idx_fst;$i<=$idx_lst;$i++) { $offset_page=($i - 1) * $count; if ($i==$cur_page) { $res.="<td class='tbl1'><span class='small'><b>$i</b></span></td>\n"; } else { $res.="<td class='tbl1'><a class='small' href='$link"."rowstart=$offset_page'>$i</a></td>\n"; } } if ($idx_next < $total) { $res.="<td class='tbl2'><a class='small' href='$link"."rowstart=$idx_next'>></a></td>\n"; if ($cur_page < ($pg_cnt - $range)) $res.="<td class='tbl2'><a class='small' href='$link"."rowstart=".($pg_cnt-1)*$count."'>>></a></td>\n"; } $res.="</tr>\n</table>\n"; } return $res; } // Format the date & time accordingly function showdate($format, $val) { global $settings; if ($format == "shortdate" || $format == "longdate" || $format == "forumdate") { return strftime($settings[$format], $val+($settings['timeoffset']*3600)); } else { return strftime($format, $val+($settings['timeoffset']*3600)); } } // Translate bytes into kb, mb, gb or tb by CrappoMan function parsebytesize($size,$digits=2,$dir=false) { $kb=1024; $mb=1024*$kb; $gb=1024*$mb; $tb=1024*$gb; if (($size==0)&&($dir)) { return "Empty"; } elseif ($size<$kb) { return $size."Bytes"; } elseif ($size<$mb) { return round($size/$kb,$digits)."Kb"; } elseif ($size<$gb) { return round($size/$mb,$digits)."Mb"; } elseif ($size<$tb) { return round($size/$gb,$digits)."Gb"; } else { return round($size/$tb,$digits)."Tb"; } } // User level, Admin Rights & User Group definitions define("iGUEST",$userdata['user_level'] == 0 ? 1 : 0); define("iMEMBER", $userdata['user_level'] >= 101 ? 1 : 0); define("iADMIN", $userdata['user_level'] >= 102 ? 1 : 0); define("iSUPERADMIN", $userdata['user_level'] == 103 ? 1 : 0); define("iUSER", $userdata['user_level']); define("iUSER_RIGHTS", $userdata['user_rights']); define("iUSER_GROUPS", substr($userdata['user_groups'], 1)); if (iADMIN) { define("iAUTH", substr($userdata['user_password'],16,32)); $aidlink = "?aid=".iAUTH; } ?> [/code] Link to comment https://forums.phpfreaks.com/topic/42551-that-damn-header/#findComment-206485 Share on other sites More sharing options...
tarun Posted March 13, 2007 Share Posted March 13, 2007 Too Be Honest I Cant Be Bovered To Check Your Code But Check This Sticky HEADER ERRORS - READ HERE BEFORE POSTING THEM Link to comment https://forums.phpfreaks.com/topic/42551-that-damn-header/#findComment-206487 Share on other sites More sharing options...
sandrob57 Posted March 13, 2007 Author Share Posted March 13, 2007 Too Be Honest I Cant Be Bovered To Check Your Code But Check This Sticky HEADER ERRORS - READ HERE BEFORE POSTING THEM Thanks Link to comment https://forums.phpfreaks.com/topic/42551-that-damn-header/#findComment-206539 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.