Премини към съдържанието
Форумът в приложение

По-лесно сърфиране. Научи повече.

Kaldata.com - Форуми

Приложение на форума на цял екран с push известия, значки и други.

За да инсталирате това приложение на iOS и iPadOS
  1. Докоснете Иконата за споделяне в Safari
  2. Превъртете менюто и докоснете Добавяне към началния екран.
  3. Докоснете Добавяне в горния десен ъгъл.
За да инсталирате това приложение на Android
  1. Докоснете менюто с 3 точки (⋮) в горния десен ъгъл на браузъра.
  2. Докоснете Добавяне към началния екран или Инсталиране на приложение.
  3. Потвърдете, като докоснете Инсталиране.

Добре дошли!

Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

 

Проблем с session_start()

Featured Replies

Здравейте !

Използвам готово CMS за Topsites ,но когато дам на User CP ми излиза

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /home/hosting/lineageii/web/serversl2bg/global.php:1) in /home/hosting/lineageii/web/serversl2bg/admin/session.php on line 38


Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/hosting/lineageii/web/serversl2bg/global.php:1) in /home/hosting/lineageii/web/serversl2bg/admin/session.php on line 38
Някой може ли да ми каже каде е станало грешка ? :beer:;) Ето PHP кода
<?php

// +------------------------------------------------------------------+

// | evoTopsites

// | Copyright (c) 2005 Evo-Dev

// +------------------------------------------------------------------+

class Session

{

	function Session($name='')

	{

		global $settings,$_SESSION;


		$name = $name == '' ? 's' : $name;


		$this->time = time();

		$this->user_ip = $this->get_ip();


		//if (isset($_SESSION['expire']) && $this->time > $_SESSION['expire'])

		//{

			//$this->destroy_session();

			//header("location: ".$_SERVER['PHP_SELF']);

		//}


		$this->ses_name = 'evolist_'.$name;

		$this->get_session();


		//echo $this->ses_id."<br />";


	}


	function get_session()

	{

		global $_SESSION,$_COOKIE,$_GET,$_POST,$_REQUEST;


		ini_set('session.use_trans_sid', false);

		ini_set("url_rewriter.tags","");


		session_name($this->ses_name);

		session_start();



		$this->ses_id = session_id();

		$this->ses_amp = "&amp;";


	}


	function get_surl()

	{

		global $_COOKIE;

		$surl = !isset($_COOKIE['s']) ? $this->ses_amp.session_name($this->ses_name)."=".$this->ses_id:'';


		return $surl;

	}


	function makeurl($url)

	{

		return $url.$this->get_surl();

	}


	function destroy_session()

	{

		global $evoLANG;


		$_SESSION = array();

		session_destroy();


		//return $evoLANG['ses_loggedout'];

	}


	function get_ip()

	{

		global $_SERVER,$_ENV;

		$getip = !empty($_SERVER['REMOTE_ADDR']) ? $_SERVER['REMOTE_ADDR']:$_ENV['REMOTE_ADDR'];

		return $getip;

	}



}



// session thingy

$ses  = new Session($SESSION_NAME);

$sid  = $ses->ses_id;

$amp  = $ses->ses_amp;

$surl = $ses->get_surl();



//echo $sid;


//kalau ade session, get $userinfo array

// kalau tak login lagi, buat login form

// kalau ade login info, check for session cookie, else check $_GET[s]

// check inadmin

// check session expiration


if ( !empty($_GET['do']) )

{

	if ($_GET['do'] == "clear")

	{

		$_SESSION = array();

		session_destroy();

		header("location: ".$_SERVER['PHP_SELF']);

	}

}

?>

Ще съм много благодарен ако някой открие грешката.

По принцип сесия се започва в началото на страницата, преди да е пратено каквото и да е, само че не мога да проследя в кода какво не е наред. Пробвай да махнеш празните редове горе.

  • Администратор

Както си пише, проблема не в session.php a в globul.php

Вероятно там имаш интервал или празен ред пред <? който се праща към браузъра, и затова ти пише output started at /home/hosting/lineageii/web/serversl2bg/global.php:1

  • Автор

<?php

// +------------------------------------------------------------------+

// | evoTopsites

// | Copyright (c) 2005 Evo-Dev

// +------------------------------------------------------------------+

error_reporting(E_ALL & ~E_NOTICE);

chdir("admin");

require_once("./common.php");

chdir("..");

unset($root);


if (trim($_REQUEST['content']) != '')

{

	$_REQUEST['content'] = '';

}


/* ---------------------------- */

//		settings class

/* ---------------------------- */

$set = new settings;


$set->db['sg']		= $database['sgroup'];

$set->db['s']		= $database['settings'];


$set->db_file		= "admin/config_site.php";

$set->db_file_loc	= "";

$set->array_name	= "settings";

$set->generate_file = 0;

$set->add			= array();

$set->save_file		= 'settings.php';

$set->save_redirect = 'settings.php';


/* ---------------------------- */

//		function class

/* ---------------------------- */

$admin = new admin;


//admin css

$settings['admincss_folder']	= './admin/admincss/';

$settings['adminstyle_folder']	= $settings['admincss_folder'].$settings['defadminstyle'].'/';

$settings['admin_css']			= $settings['adminstyle_folder']."admin.css";


/* ---------------------------- */

//		admin template class

/* ---------------------------- */

$tpl = new template;

$tpl->templatefolder = "templates/admin";

$tpl->extension	  = "tpl";


/* ---------------------------- */

//		gZIP

/* ---------------------------- */

if ($settings['usegzip'] == 1)

{

	$admin->do_compress();

}




/* ---------------------------- */

//		start ticking

/* ---------------------------- */

start(); 




/* ---------------------------- */

//		language file!

/* ---------------------------- */

require($root."lang/".$settings['deflang'].".php");

$evoLANG = $admin->strip_array( $evoLANG );





/* ---------------------------- */

//		declare some stuff

/* ---------------------------- */

$site['name'] = $settings['sitename'];




/* ---------------------------- */

//		user class

/* ---------------------------- */

require ("admin/lib/class_user.php");

$usr = new User;


$usr->db['user']		= $database['user'];

$usr->db['field']		= $database['userfield'];

$usr->db['usergroup']	= $database['usergroup'];


foreach($_GET as $_getv['var'] => $_getv['val'])

{

	switch($_getv['var'])

	{

		case "do":

			$_SERVER['QUERY_STRING'] = $_getv['val'];

		break;

		default;

			$_GET[$getv['var']] = $_getv['val'];

	}

}


/* ---------------------------- */

//		custom pages

/* ---------------------------- */

$cpages = new Pages;


/* ---------------------------- */

//		admin paging class

/* ---------------------------- */

$apaging = new Paging_Admin;


/* ---------------------------- */

//		language class

/* ---------------------------- */

$lang = new Language;



/* ---------------------------- */

//		 code parser class

/* ---------------------------- */

$parser = new Parser;


/* ---------------------------- */

//		topsite class

/* ---------------------------- */

$top = new Topsites;


/* ---------------------------- */

//		stats

/* ---------------------------- */

$_stats = new Stats;


/* ---------------------------- */

//		comments system

/* ---------------------------- */

$comment_system = 'internal';

if ( file_exists("admin/comments/".$comment_system.".php") )

{

	include "admin/comments/".$comment_system .".php";

	$cmt = new Comments;


	//include the config

	include "admin/comments/config.php";

}


/* ---------------------------- */

//		styles class loaded

/* ---------------------------- */

$page = new Styles();


// ON GENERATE

$page->ON_GENERATE .= '$a = unserialize(\'a:15:{s:1:"q";s:11:"<a href="ht";s:1:"w";s:8:"tp://www";s:1:"e";s:7:".evo-de";s:1:"r";s:6:"v.com/";s:1:"t";s:11:"products/ev";s:1:"y";s:5:"otops";s:1:"u";s:8:"ites/">T";s:1:"i";s:5:"op Si";s:1:"o";s:5:"tes P";s:1:"p";s:3:"owe";s:1:"a";s:3:"red";s:1:"s";s:4:" by ";s:1:"d";s:4:"evoT";s:1:"f";s:5:"opsit";s:1:"g";s:6:"es</a>";}\');';


$page->ON_GENERATE .= '$arsv=$a[\'q\'].$a[\'w\'].$a[\'e\'].$a[\'r\'].$a[\'t\'].$a[\'y\'].$a[\'u\'].$a[\'i\'].$a[\'o\'].$a[\'p\'].$a[\'a\'].$a[\'s\'].$a[\'d\'].$a[\'f\'].$a[\'g\'];';


$page->ON_GENERATE .= ' $TIMENOW	= date($settings[\'dateformat2\'],time());

						$NEXTRESET	= date($settings[\'dateformat2\'],$settings[\'nextreset\']);

						$LASTRESET  = date($settings[\'dateformat2\'],$settings[\'lastreset\']);';


// determine style id first.

if ( isset($_COOKIE[$_CONFIG['cookieprefix'].'style']) )

{

	$page->style_id = intval($_COOKIE[$_CONFIG['cookieprefix'].'style']);

}


//cookie is null

if ( $page->style_id == '' || $page->style_id == '-1' )

{

	$page->style_id = $settings['defstyle'];

}


// IF CATEGORY STYLE

if ( $_GET['cat_id'] != '')

{

	$getstylerow = $udb->query_once("SELECT style FROM ".$database['cat']." WHERE ".(!is_numeric($_GET['cat_id']) ? 'tname':'cid')."='".$_GET['cat_id']."'");


	if ($getstylerow['style'] != '')

	{

		$page->style_id = $getstylerow['style'];

	}

}



//if style is manually picked for demos?

if ( $_GET['style'] != '')

{

	if ($_GET['style'] != 'none')

	{

		$admin->makecookie('style',$_GET['style']);

		echo $admin->redirect($_SERVER['PHP_SELF'],0);

		exit;

	}

	else

	{

		$admin->makecookie('style','');

		echo $admin->redirect($_SERVER['PHP_SELF'],0);

		exit;

	}


	$page->style_id = $_GET['style'];	

}



//what if style id doesnt exists?

$_style = $udb->query_once("SELECT * FROM ".$page->db." WHERE style_id='".$page->style_id."'");

if ( !is_array($_style) )

{

	$_style = $udb->query_once("SELECT * FROM ".$page->db." WHERE style_id='".$settings['defstyle']."'");

	$page->style_id = $settings['defstyle'];

}


//INIT STYLE

$page->init_main();


if ($_GET['get'] == "css")

{

	echo $page->cssfile;

	exit;

}


if ($settings['style_external_css'] == 1 && $settings['style_static_css'] != 1)

{

	$page->cssfile = 'global.php?get=css';

}


//stylevars stuff


$_style['style_vars']	= is_array($_style['style_vars']) ? $_style['style_vars'] : unserialize($_style['style_vars']);

$settings['imgfolder']	= $_style['style_vars']['imgfolder'] != '' ? $_style['style_vars']['imgfolder'] : $settings['imgfolder'];

$settings['imgfolder']	= str_replace( '{SITEURL}', $settings['siteurl'], $settings['imgfolder'] );

$script['imgfolder']	= $settings['imgfolder'];


/* ---------------------------- */

//		phpparse template

/* ---------------------------- */

ob_start();

eval( $page->cache_tpl['phpparse'] );

$phpparse_output = ob_get_contents();

ob_end_clean();






/* ---------------------------- */

//		Site Status

/* ---------------------------- */

if ($settings['isclose'] == 1)

{

	$site['title'] = $evoLANG['closed']; 

	$content = $settings['closereason'];

	$page->generate();

	exit;

}


/* ---------------------------- */

//		Ban feature

/* ---------------------------- */

if ( trim($settings['ban_site']) != '')

{

	$ips = explode("\n", trim($settings['ban_site']) );


	foreach($ips as $ip)

	{

		if ($ip != '')

		{

			if ( strpos( $admin->get_ip(), trim($ip)) !== false )

			{

				$site['title'] = $evoLANG['banned'];

				$content = $admin->warning($evoLANG['banned_notice']);

				$page->generate();

				exit;

			}

		}

	}

}

?>

global.php

  • 2 седмици по-късно...

Ако още не си решил проблема, провери каква е кодировката на файла GLOBAL.PHP.

Ако е UTF-8 я промени на ANSI.

  • Автор

Няма кодировка ... нито UTF нит ANSI

Ако трябва да я сложа дай точния код за АНСИ плс

Няма кодировка ... нито UTF нит ANSI

Ако трябва да я сложа дай точния код за АНСИ плс

Каква е кодировката на самия файл GLOBAL.PHP, не на HTML страницата която ще се генерира.

Ако го отвориш в някакъв шестнайсетичен редактор ще видиш дали пред символа < няма още един код.

  • Автор

Разбрах. Не се досетих

Ся ще видя така ли е

УОУ ти си велик !!!! :angry::wors: :wors: ;):clap: :clap: :clap: :clap:

Регистрирайте се или влезете в профила си за да коментирате

Разглеждащи това в момента 0

  • Няма регистрирани потребители разглеждащи тази страница.

Дарение

  • Подкрепи съществуването на форума - направи дарение
    32%
    Дарени 315 € от нужните 1 000 €

Бюлетин

Получавайте известие, когато има важна промяна или новина свързана с форума.

Профил

Навигация

Търсене

Търсене

Конфигуриране на push известия в браузъра

Chrome (Android)
  1. Докоснете иконата на катинар до адресната лента.
  2. Докоснете Разрешения → Известия.
  3. Променете предпочитанията си.
Chrome (Desktop)
  1. Кликнете върху иконата на катинар в адресната лента.
  2. Изберете Настройки на сайта.
  3. Намерете Известия и коригирайте предпочитанията си.