php - Works on localhost but not on web server....session_start(): Cannot send session cache limiter - headers already sent -
php - Works on localhost but not on web server....session_start(): Cannot send session cache limiter - headers already sent -
i newbie php , have tried , tried forum threads seek , prepare after week - sense no nearer.
the localhost version works fine - no problem. however, when upload it, presents me next messsage:
session_start(): cannot send session cache limiter - headers sent (output started @ /home/idigital123/public_html/index.php:2) in /home/idigital123/public_html/index.php on line 41
here code:
<?php require_once('connections/idigitalconn.php'); ?> <?php if (!function_exists("getsqlvaluestring")) { function getsqlvaluestring($thevalue, $thetype, $thedefinedvalue = "", $thenotdefinedvalue = "") { if (php_version < 6) { $thevalue = get_magic_quotes_gpc() ? stripslashes($thevalue) : $thevalue; } $thevalue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($thevalue) : mysql_escape_string($thevalue); switch ($thetype) { case "text": $thevalue = ($thevalue != "") ? "'" . $thevalue . "'" : "null"; break; case "long": case "int": $thevalue = ($thevalue != "") ? intval($thevalue) : "null"; break; case "double": $thevalue = ($thevalue != "") ? doubleval($thevalue) : "null"; break; case "date": $thevalue = ($thevalue != "") ? "'" . $thevalue . "'" : "null"; break; case "defined": $thevalue = ($thevalue != "") ? $thedefinedvalue : $thenotdefinedvalue; break; } homecoming $thevalue; } } mysql_select_db($database_idigitalconn, $idigitalconn); $query_recordset1 = "select login.username, login.password login"; $recordset1 = mysql_query($query_recordset1, $idigitalconn) or die(mysql_error()); $row_recordset1 = mysql_fetch_assoc($recordset1); $totalrows_recordset1 = mysql_num_rows($recordset1); ?> <?php // *** validate request login site. if (!isset($_session)) { session_start(); } $loginformaction = $_server['php_self']; if (isset($_get['accesscheck'])) { $_session['prevurl'] = $_get['accesscheck']; } if (isset($_post['username'])) { $loginusername=$_post['username']; $password=$_post['password']; $mm_flduserauthorization = ""; $mm_redirectloginsuccess = "header/ks3yr7.html"; $mm_redirectloginfailed = "index.php"; $mm_redirecttoreferrer = false; mysql_select_db($database_idigitalconn, $idigitalconn); $loginrs__query=sprintf("select username, password login username=%s , password=%s", getsqlvaluestring($loginusername, "text"), getsqlvaluestring($password, "text")); $loginrs = mysql_query($loginrs__query, $idigitalconn) or die(mysql_error()); $loginfounduser = mysql_num_rows($loginrs); if ($loginfounduser) { $loginstrgroup = ""; if (php_version >= 5.1) {session_regenerate_id(true);} else {session_regenerate_id();} //declare 2 session variables , assign them $_session['mm_username'] = $loginusername; $_session['mm_usergroup'] = $loginstrgroup; if (isset($_session['prevurl']) && false) { $mm_redirectloginsuccess = $_session['prevurl']; } header("location: " . $mm_redirectloginsuccess ); } else { header("location: ". $mm_redirectloginfailed ); } } ?>
what need check is:
if (session_status() == php_session_none) { session_start(); } instead of:
if (!isset($_session)) { session_start(); } also set on top of code @jay explained.
edit: in part need absolute url (as explained in documentaton: http://php.net/manual/es/function.header.php)
header("location: " . $file); so alter (or way want absolute path):
header("location: http://" . $_server["http_host"] . "/" . $file); php
Comments
Post a Comment