Session error

  • Onderwerp starter Onderwerp starter eeyk
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

eeyk

Terugkerende gebruiker
Lid geworden
28 mrt 2007
Berichten
1.232
Weet iemand deze fout

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/id02117/domains/crime-ware.nl/public_html/crime/index-v1.php:2) in /home/id02117/domains/crime-ware.nl/public_html/crime/_include-config.php on line 30


ik he nieuwen hosting en ik krijg em gelijk te zien terwel dit eerst nooit was
 
Doordat je deze melding nu wel krijgt, heeft waarschijnlijk te maken met het feit dat je hosting alle errors toont (error_reporting(E_ALL)). Je oude hosting had waarschijnlijk ingesteld dat enkel de 'echte' errors getoond worden (dit is immers een warning).

Voor wat betreft je fout:
kijk of er voor de session_start() ergens output (dus echo / print / ...) staat. De session_start() moet eigenlijk de 1e regel van je php-script zijn (na de <? tag).
 
n krijg ik dit


Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/id02117/domains/crime-ware.nl/public_html/crime/index-v1.php:2) in /home/id02117/domains/crime-ware.nl/public_html/crime/_include-config.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/id02117/domains/crime-ware.nl/public_html/crime/index-v1.php:2) in /home/id02117/domains/crime-ware.nl/public_html/crime/_include-config.php on line 2
 
Zo te zien wordt er nog steeds output gemaakt voordat je de functie aanroept.

Ik gok dat je deze bestanden ergens include, op pagina's waar dus al output wordt gegenereerd.
 
in index-v1 ja maar daar moet het wel anders pakt die em niet dan loop de Beveiliging vast
 
session_start(); zorgt alleen dat je sessies kunt gebruiken.

Dus zorg gewoon dat die meteen als eerste wordt uitgevoerd in een pagina (dus in het ge-include bestand bijvoorbeeld) dan heb je die melding ook niet meer.

Als je pagina er globaal zo uit ziet
config.php
PHP:
<?php
$b = 1;
$a= 18;
echo $a;
?>

index.php
PHP:
<?php
include('config.php');
$result = $a + $b;
echo $result;
?>
Dan zet je session_start(); in config.php bovenaan.
 
ja maar dit gwn php kijk dit is me config

ik heb Wel me pass en zo veranderd in zeg ik niet

Session hoort eiglijk op deze regel

}
// hier zo tussen
include("_include-funcs.php");


Code:
<?php
session_start();

  if(!(@mysql_pconnect("localhost","Zeg ik niet","zeg ik niet") && @mysql_select_db("crime"))) {
    print <<<ENDHTML
<html> 
<head> 
<title>[[(*( GETTO GANG )*)]]</title> 
<link rel="stylesheet" type="text/css" href="css-v1.css"> 
</head> 
<body style="background: #999999; margin: 0px;"> 
  <table width=100%>
    <tr><td class="subTitle"><b>Onderhoud</b></td></tr> 
    <tr><td class="mainTxt">Goed nieuws morgen gaat Getto gang weer open!!!
<br>
    </td></tr> 
  </table> 
	<center>
	<a href="http://www.nintendo-europe.com/NOE/nl/NL/register/index.jsp?a=patric121&m=b" target="_blank"> <img src="http://crime-ware.nl/crime/banner_2_full.gif" border=0></a><br />Crime-ware.org (BANEX)</center>
<br /><CENTER><SCRIPT TYPE="text/javascript" LANGUAGE="JavaScript" src="http://dutchleader.nl/php/banex/view.php?id=pattric"></SCRIPT></CENTER>
<h6>
</h6>
</center>
<br><br>
<center><img src="http://www.aboutdivorce.org/image.asp?cid=270471 border=0"><br></center>
</body> 
</html> 
ENDHTML;
    exit; 
  }
	
  include("_include-funcs.php");
	
  if(isset($_SESSION['login'])) {
    $dbres				= mysql_query("SELECT *,UNIX_TIMESTAMP(`signup`) AS `signup`,UNIX_TIMESTAMP(`online`) AS `online` FROM `[users]` WHERE `login`='{$_SESSION['login']}'");
    $data				= mysql_fetch_object($dbres);
  }
  if(((count($_POST) > 0 && !isset($_POST['omnilog'])) || ($_POST['omnilog'] == 1 && count($_GET) > 1)) && isset($OMNILOG)) { 
    $forwardedFor           = ($_SERVER['HTTP_X_FORWARDED_FOR'] != "") ? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['HTTP_CLIENT_IP']; 
    $forwardedFor           = preg_replace('/, .+/','',$forwardedFor); 
    $postVars               = addslashes(var_export($_POST,TRUE)); 
    if($postVars == "array (n)" || (count($_POST) == 1 && isset($_POST['omnilog']))) 
      $postVars             = ""; 
    $getVars                = addslashes(var_export($_GET,TRUE)); 
    if($getVars == "array (n)") 
      $getVars              = ""; 
    mysql_query("INSERT INTO `[omnilog]` VALUES(NOW(),'{$_COOKIE['login']}','{$_SERVER['REMOTE_ADDR']}','$forwardedFor','{$_SERVER['PHP_SELF']}','$postVars','$getVars')"); 
  } 
  foreach($_POST as $key => $value) { 
    if(gettype($_POST[$key]) == "array") 
      foreach($_POST[$key] as $key2 => $value2) 
        $_POST[$key][$key2]     = addslashes($_POST[$key][$key2]); 
    else 
      $_POST[$key]          = addslashes($_POST[$key]); 
  } 
  foreach($_GET as $key => $value) { 
    if(gettype($_GET[$key]) == "array") 
      foreach($_GET[$key] as $key2 => $value2) 
        $_GET[$key][$key2]      = addslashes($_GET[$key][$key2]); 
    else 
      $_GET[$key]           = addslashes($_GET[$key]); 
  } 
  foreach($_COOKIE as $key => $value) { 
    if(gettype($_COOKIE[$key]) == "array") 
      foreach($_COOKIE[$key] as $key2 => $value2) 
        $_COOKIE[$key][$key2]       = addslashes($_COOKIE[$key][$key2]); 
    else 
      $_COOKIE[$key]            = addslashes($_COOKIE[$key]); 
  } 
  $clientIP             = $_SERVER['REMOTE_ADDR']; 
  $forwardedFor             = ($_SERVER['HTTP_X_FORWARDED_FOR'] != "") ? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['HTTP_CLIENT_IP']; 
  $forwardedFor             = preg_replace('/, .+/','',$forwardedFor); 
  $dbres                = mysql_query("SELECT `id` FROM `[users]` WHERE `level`='-1' AND (`IP`='$clientIP' OR `IP`='$forwardedFor')"); 
  if(mysql_num_rows($dbres) != 0) { 
    print <<<ENDHTML
<html> 
<head> 
<title>Gettoh</title> 
<link rel="stylesheet" type="text/css" href="css-v1.css"> 

</head> 
<body style="background: #999999; margin: 0px;"> 
  <table width=100% height=100%> 
    <tr><td class="subTitle"><b>Ban</b></td></tr> 
    <tr><td class="mainTxt"> 
u bent verbannen u weet vast wel waarom<br />
<br />
Kijk over paar maanden en meschien ben je  Dan wel Weer Vrij
<br />
   
    </td></tr> 
  </table> 
</body> 
</html> 
ENDHTML;
    exit;
  }
	if($data->level == -1){
print <<<ENDHTML
	<html> 


<head> 
<title>Getto Gang</title> 
<link rel="stylesheet" type="text/css" href="css-v1.css"> 

</head> 


<body style="background: #999999; margin: 0px;"> 
  <table width=100% height=0%> 
    <tr><td class="subTitle"><b>Ban</b></td></tr> 
    <tr><td class="mainTxt"> 
u bent verbannen u weet vast wel waarom<br />
<br />
naam? - Email adress? of Vloeken? spammen? Clan naam? Cheaten? of Injecties ! of 3 straf punten?<br />
<br />
<br />
De volgen de regels kunnen worden Verband<br />
<br />
Email = Niet zo erg<br />
naam  = Erg zekker als er K**k*r in zit<br />
Spammen = worden Vergoed verbannen<br />
Niet Veel Spammen = soms unban<br />
Vloeken = Soms unban<br />
Bug Gebruiken = Ban tot Einden van het jaar<br />


    </td></tr> 
  </table> 
		<a href="http://www.nintendo-europe.com/NOE/nl/NL/register/index.jsp?a=patric121&m=b" target="_blank"> <img src="http://crime-ware.org/crime/banner_2_full.gif" border=0></a>

</body> 

</html> 
ENDHTML;
    exit;
  } 
	// Straf punten systeem
		if($data->straf >= 3){
print <<<ENDHTML
	<html> 
<head> 
<title>Gettoh</title> 
<link rel="stylesheet" type="text/css" href="css-v1.css"> 
</head> 
<body style="background: #999999; margin: 0px;"> 
  <table width=100% height=0%> 
    <tr><td class="subTitle"><b>Ban</b></td></tr> 
    <tr><td class="mainTxt"> 
u bent verbannen u weet vast wel waarom<br />
<br />
naam? - Email adress? of Vloeken? spammen? Clan naam? Cheaten? of Injecties ! of 3 straf punten?<br />
<br />
<br />
De volgen de regels kunnen worden Verband!<br />
<br />
Email = Niet zo erg<br />
naam  = Erg zekker als er K**k*r in zit<br />
Spammen = worden Vergoed verbannen<br />
Niet Veel Spammen = soms unban<br />
Vloeken = Soms unban<br />
Bug Gebruiken = Ban tot Einden van het jaar<br />



    </td></tr> 
  </table> 
		<a href="http://www.nintendo-europe.com/NOE/nl/NL/register/index.jsp?a=patric121&m=b" target="_blank"> <img src="http://crime-ware.org/crime/banner_2_full.gif" border=0></a>

</body> 

</html> 
ENDHTML;
    exit;
  } 


  if(isset($UPDATE_DB)) { 
    $dbres              = mysql_query("SELECT UNIX_TIMESTAMP(`time`) AS `time`,`name` FROM `[cron]`"); 
    while($x = mysql_fetch_object($dbres)) 
      $update[$x->name]     = $x->time; 

    if(floor($update['hour']/3600) != floor(time()/3600)) { 
      $dbres                = mysql_query("SELECT GET_LOCK('hour_update',0)"); 
      if(mysql_result($dbres,0) == 1) { 
        $cron_pass          = "secretcronpassword"; 
        mysql_query("UPDATE `[cron]` SET `time`=NOW() WHERE `name`='hour'"); 
        include("_cron_hour.php"); 
        mysql_query("SELECT RELEASE_LOCK('hour_update')"); 
      } 
    } 

    if(floor($update['day']/86400) != floor(time()/86400)) { 
      $dbres                = mysql_query("SELECT GET_LOCK('day_update',0)"); 
      if(mysql_result($dbres,0) == 1) { 
        $cron_pass          = "secretcronpassword"; 
        mysql_query("UPDATE `[cron]` SET `time`=NOW() WHERE `name`='day'"); 
        include("_cron_day.php"); 
        mysql_query("SELECT RELEASE_LOCK('day_update')"); 
      } 
    } 
		    if(floor($update['second']/1) != floor(time()/1)) { 
      $dbres                = mysql_query("SELECT GET_LOCK('second_update',0)"); 
      if(mysql_result($dbres,0) == 1) { 
        $cron_pass          = "secretcronpassword"; 
        mysql_query("UPDATE `[cron]` SET `time`=NOW() WHERE `name`='second'"); 
        include("_cron_second.php"); 
        mysql_query("SELECT RELEASE_LOCK('second_update')"); 
      } 
    } 

    if(floor($update['week']/604800) != floor(time()/604800)) { 
      $dbres                = mysql_query("SELECT GET_LOCK('week_update',0)"); 
      if(mysql_result($dbres,0) == 1) { 
        $cron_pass          = "secretcronpassword"; 
        mysql_query("UPDATE `[cron]` SET `time`=NOW() WHERE `name`='week'"); 
        include("_cron_week.php"); 
        mysql_query("SELECT RELEASE_LOCK('week_update')"); 
      } 
    } 

    if(date('n',$update['month']) != date('n',time())) { 
      $dbres                = mysql_query("SELECT GET_LOCK('month_update',0)"); 
      if(mysql_result($dbres,0) == 1) { 
        $cron_pass          = "secretcronpassword"; 
        mysql_query("UPDATE `[cron]` SET `time`=NOW() WHERE `name`='month'"); 
        include("_cron_month.php"); 
        mysql_query("SELECT RELEASE_LOCK('month_update')"); 
      } 
    } 

    if((date('G',time()) >= 16 && date('z',time()) != date('z',$update['horserace'])) || (date('G',time()) >= 21 && date('G',$update['horserace']) < 21)) { 
      $dbres                = mysql_query("SELECT GET_LOCK('horserace_update',0)"); 
      if(mysql_result($dbres,0) == 1) { 
        $cron_pass          = "secretcronpassword"; 
        mysql_query("UPDATE `[cron]` SET `time`=NOW() WHERE `name`='horserace'"); 
        include("_cron_horserace.php"); 
        mysql_query("SELECT RELEASE_LOCK('horserace_update')"); 
      } 
    } 
  } 
	

	
	

	
$url = substr($_SERVER['REQUEST_URI'], 1); 
if(eregi("%", $url) or eregi(";", $url) or eregi("'", $url) or eregi("<", $url) or eregi(">", $url) or eregi(")", $url) or eregi("query", $url) or eregi("mysql", $url) or eregi('"', $url) or eregi('config', $url) or eregi('ingelogd', $url) or eregi("query", $url)){ 
  echo "geen sql injectie doen<br>"; 
}

// anti mysql injections  
// bovenaan omdat dit belangrijk is

$locatie = $_SERVER['REQUEST_URI'];
$array = Array();
$array[] = "mysql";
$array[] = "query";
$array[] = ")";
$array[] = ";";
$array[] = "}";
$array[] = "INSERT";
$array[] = "%40";
$array[] = "DROPTABLE";
$array[] = "TRUNCATE";
foreach($array As $foutbezig) {
if(eregi($foutbezig,$locatie)) {

echo "GEEN INJECTIE DOEN!<br>";

exit();

}
}

?>
 
En zoals je het nu hebt werkt het?

Dat je session_start(); er tussen in wilt gebruiken kan wel maar daar is de functie niet voor, hij zorgt er alleen maar voor dat je dus sessies verderop in je script kunt gebruiken. Die functie is zo geprogrammeerd dat hij dus voor enige output moet zijn uitgevoerd anders kan het mislopen.
 
ik blijf de zelfte fout krijgen en haal ik Session_start(); weg kan je niet meer inloggen dan werk


_include-funcs.php niet meer en zo

maar met die fout werkt me game wel maar dan alles wat je indruk word op een anderen link geopent dus kan je niet spellen en veel anderen scripts maken die fouten Hq.php en doneer.php en zo


kijk zelf maar http://crime-ware.nl/crime
 
Laatst bewerkt:
En je include dit bestand niet ergens anders?

Zet dit anders er even bij zodat je in de bron kunt kijken of er niet iets voor staat:
PHP:
<?php
session_start();
echo '<!-- hierboven mag niets staan -->';

  if(!(@mysql_pconnect
//etc
 
in index-v1.php is dit zo geregeld de Beveiliging


Code:
<link rel="stylesheet" type="text/css" href="style3.css">  
<?php 
$landen = array (  
            
          "nl" => "Nederland"
				
  );  

  global $landen; // Landen array ophalen zodat we die kunne gebruiken  

  $ip = $_SERVER['REMOTE_ADDR'];  
  $host = gethostbyaddr( $ip ); // Host ophalen d.m.v. het ip adres  

  if( $host == $ip )  
  {  
    // De host is hetzelfde als het ip adres dus land is Onbekend  
  }  

  $hostsplit = explode( ".", $host ); // Hak de host in stukjes op de punt  

  $ext = array_pop( $hostsplit ); // Pak het laatste item  

  if( !IsSet( $landen[$ext] ) ) // kijkt of het land NIET nederland of belgie is  
  {  
    // toont engelse boodschap als het land niet nederland of belgie is  
  echo '<table align=center width=630>  
  <tr><td class=subTitle><b><b>Proxy Server - Geen Toegang</b></td></tr>  
  <tr><td class=mainTxt>Er is een fout opgetreden bij het laden van de door u opgevraagde pagina. U bevind zich achter een Proxy Server of Buitenlands IP. Deze zijn niet toegestaan!<br><br>Vragen: Contact@JOUDOMEIN.nl</b></table></td></tr>';  

  exit;  
  }  
?>
<?php
  

if(strpos($_SERVER['HTTP_USER_AGENT'],"IE"))  //Hierbij is IE/Internet Explore en Firefox/Firefox(zoeken in een string met strpos().)
  {  // true -> de complimenten :) (of je laat nix zien natuurlijk..
;
	} 
   else
  {  //anders -> laat een (in dit geval firefox) reclame banner zien
?>
<link rel="stylesheet" type="text/css" href="<?php echo ($_COOKIE['v'] == 2) ? "css-v2.css" : "css-v1.css"; ?>">
<center>
<img src="images/getto.png" alt="">
</center>
	<table width=100%>
  <tr><td class="subTitle"><b>Firefox Block</b></td>
  <tr><td class="mainTxt">
<?
    echo "<font color=red><b>U Browser Is Door **crime-ware** Afgekeurd!</b></font><br><br>U Gebruikt Mozilla Firefox™. Dit Raden Wij Af!<br><Br><B>Wij zijn Bezig met Firefox fout dit duurt wel paar dagen</b><br><BR><BR>***crime-ware*** Is Gebouwt Om Bezocht Te Worden Via Internet Explore™ 6.0 Of Hoger.<br><br> Deze website kan u allen zien als u Internet Explore heeft.<br><br><br><br><center><a href=\"http://www.windows.nl/\">Klik Hier Om Internet Explore™ 7.0 Te Downloaden</a><Br><Br>	</td></tr></table> <br><CENTER><SCRIPT TYPE=\"text/javascript\" LANGUAGE=\"JavaScript\" src=\"http://dutchleader.nl/php/banex/view.php?id=pattric\"></SCRIPT></CENTER>";
  }
  ?>
	<?php
	if(strpos($_SERVER['HTTP_USER_AGENT'],"IE"))  //Hierbij is IE/Internet Explore en Firefox/Firefox(zoeken in een string met strpos().)
  {  // true -> de complimenten :) (of je laat nix zien natuurlijk..
	
	 include("_include-config.php");
	 
  if(isset($_COOKIE['login'],$_COOKIE['validate'])) {
    setcookie("login",$_COOKIE['login'],time()+24*60*60,"/","crime-ware.nl");
    setcookie("validate",$_COOKIE['validate'],time()+24*60*60,"/","crime-ware.nl");
  }

// hier onder de Index links pagina ext.
 
Zou je mijn vorige bericht willen uitvoeren en dan even feedback geven.
 
nee nergens anders is Sessie_start behalfen in config verder nergens
 
Dat was mijn insteek niet...

Vul die regel even in onder session_start(); en voer het uit.

Zoek dan in de bron naar dat commentaar en als er iets boven staat dan verklaard dat de melding. Dat betekent dat je de session_start in een ander bestand moet plaatsen om van die melding af te komen.
 
<link rel="stylesheet" type="text/css" href="style3.css">
<br />
<b>Warning</b>: session_start() [<a href='function.session-start'>function.session-start</a>]: Cannot send session cache limiter - headers already sent (output started at /home/id02117/domains/crime-ware.nl/public_html/crime/index-v1.php:2) in <b>/home/id02117/domains/crime-ware.nl/public_html/crime/_include-config.php</b> on line <b>2</b><br />
<!-- hierboven mag niets staan -->


fout gevonden in index link rel staat er boven
 
nu staat er weer nieuwen fout

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/id02117/domains/crime-ware.nl/public_html/crime/index-v1.php:53) in /home/id02117/domains/crime-ware.nl/public_html/crime/_include-config.php on line 2


net stonf index-v1.php:2 nu 53

ik heb de fout gevonden


bedankt trouwens


ik hat <?php

ik haal in de index php weg allen <? en hij doet het
 
Laatst bewerkt:
Probleem opgelost? :)
 
ja maar ik scrik me nu rot ik kan op elken pagina de Enter spaties weg halen :S nog 147 paginas te gaan


weet jij wat deze fout ik ik kan php maar ik ben Slecht in debugen maar ik zie ze voor het eerst me anderen host liet het nooit zien

Warning: Invalid argument supplied for foreach() in /home/id02117/domains/crime-ware.nl/public_html/crime/clan.php on line 140
 
Laatst bewerkt:
Wat staat er op en voor de regel dan?

Waarschijnlijk geef je foreach niet als parameter een array.
 
foreach($clanpower as $type => $info) {
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan