session_start() [function.session-start]

  • Ich hänge bei folgender Fehlermeldung und weiss nicht weiter.

    Zitat


    Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/d00055/websites/http://test.freshn.de/freshn/inc/oben.php:7) in /home/d00055/websites/http://test.freshn.de/freshn/inc/unten.php on line 10

    oben.php, 7 ist folgendes:

    PHP
    7 <?php 	include("inc/db.php");
    8		include("inc/fotoalbum.php"); 		
    9 ?>

    unten.php, 10:

    Code
    9 <?
    10 session_start();
    11 include 'sessionhelpers.inc.php';
    12 if (isset($_POST['login']))

    Was genau bedeutet die Meldung? Wo liegt der Fehler?


    Danke schonmal im vorraus!

  • Das starten des Session Management (sesssion_start();) muss auf der Seite auftauchen bevor was anderes geschieht, also bevor irgendwelche Ausgaben gemacht werden da der Befehl in den header mit muss, sobald was anderes gemacht wird, dann ist der befehl nichtmehr im Header. Steht ja da:

    Cannot send session cache limiter - headers already sent

    schreib das mal in die ersten 3 zeilen deine Page:

    PHP
    <?php
    session_start();
    ?>


    einfach in die 1. Zeile vor allen anderen Befehlen.

    MfG

  • Poste mal den Code der oben.php von zeile 1-10, da der fehler in Zeile 8 auftaucht, dann muss vor dem session_start(); ja schon was kommen... oder includest du die Datei in eine andere? Wenn du hergest und hast eine "Seite.php" mit diesem Inhalt:

    PHP
    <html>
    </head>
    <title>BlaBla</title>
    </head>
    <body>
    <?php
       include_once "oben.php";
    ?>
    </body>
    </html>

    Dann wird nunmal der Inhalt der oben.php in die Seite.php eingefügt und das session_start(); ist wiedermal nicht an 1. Stelle der Seite!

    Zeig mal den code, dann sehen ma widdäää

  • Code
    Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\Programme\Apache xammp\xampp\htdocs\Webinterface\config\config.php:2) in C:\Programme\Apache xammp\xampp\htdocs\Webinterface\includes\security.php on line 23
    
    
    Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\Programme\Apache xammp\xampp\htdocs\Webinterface\config\config.php:2) in C:\Programme\Apache xammp\xampp\htdocs\Webinterface\includes\security.php on line 23

    Hab ein so ähnliches Problem Hierbei Handelt es sich um ein Webinterface

    Für einen Server aber ich will keine 300€ Ausgeben damit mir ne Firma eins Codet hier mal den Inhalt der security.php


    [/code]<?php

    // ************************************************************************
    //PHPrcon - PHP script collection to remotely administrate and configure Halflife and HalflifeMod Servers through a webinterface
    //Copyright (C) 2002 Henrik Beige
    //
    //This library is free software; you can redistribute it and/or
    //modify it under the terms of the GNU Lesser General Public
    //License as published by the Free Software Foundation; either
    //version 2.1 of the License, or (at your option) any later version.
    //
    //This library is distributed in the hope that it will be useful,
    //but WITHOUT ANY WARRANTY; without even the implied warranty of
    //MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
    //Lesser General Public License for more details.
    //
    //You should have received a copy of the GNU Lesser General Public
    //License along with this library; if not, write to the Free Software
    //Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
    // ************************************************************************

    //Start session
    session_start();

    //Is this a new login
    if (isset($_POST['name']) && isset($_POST['password']))
    {

    //Has the correct name and password been sent
    if($_POST['name'] == $config_user_name && $_POST['password'] == $config_user_password)
    {
    $_SESSION['name'] = $_POST['name'];
    $_SESSION['password'] = $_POST['password'];
    $_SESSION['time'] = time();
    }

    //No correct name and password
    else
    {
    Authenticate($_POST['name'], $_POST['password'], true);
    exit;
    }
    }

    //Is this an existing login
    else if (isset($_SESSION['name']) && isset($_SESSION['password']))
    {

    //Have the Session variables the correct name and password and has the last page call happened within the last 10 minutes
    if($_SESSION['name'] == $config_user_name && $_SESSION['password'] == $config_user_password && (time() - $_SESSION['time']) < 3600)
    $_SESSION['time'] = time();

    //No correct Session variables
    else
    {
    Authenticate();
    exit;
    }
    }

    //Any other case
    else
    {
    Authenticate();
    exit;
    }


    function Authenticate($name = "", $password = "", $error = false)
    {

    //Alte Daten loeschen
    $_SESSION['name'] = "";
    $_SESSION['password'] = "";
    $_SESSION['time'] = 0;

    //configs holen
    include("./config/config.php");

    //neues Template erzeugen
    $tpl = new Template("./themes/$config_theme", "keep");

    //Files bekannt machen
    $tpl->set_file(array(
    "main" => "main.ihtml",
    "login" => "login.ihtml",
    ));

    //Sprachblöcke setzen
    include("./includes/language.php");

    //Variablen setzen
    $tpl->set_var(array(
    "LOGIN_CURRENTURL" => $_SERVER['SCRIPT_NAME'],
    "LOGIN_NAME" => $name,
    "LOGIN_PASSWORD" => $password,
    "FEEDBACK" => ""
    ));

    //Sachen einparsen
    if($error)
    $tpl->parse("FEEDBACK", "loginerror", false);

    //alles raus parsen
    $tpl->parse("CONTENT", "login", false);
    $tpl->parse("OUT", "main", false);
    $tpl->p("OUT");

    //CU l8er
    exit;
    }

    ?>
    [/code]

  • Diese Datei bzw php liegt in einem Ordner der Includes heißt und dadrin befindet sich die security.php

    Aber ich weiß leider nicht wie ich diese Fehlermeldung wegbekomme

  • Nein das weiß ich leider nicht wie gesagt es ist ein Webinterface ich denke mal es wird in einer dieser Datein geöffnet

    info_index.php
    rcon_index.php

    Es kann aber auch sein das es eine andere Datei ist

    Stammordner
    rcon_command.php
    rcon_serverconfig.php
    rcon_help.php
    rcon_banlist.php
    rcon_servermaps.php
    rcon_news.php
    rcon_serverrules.php

    classes (Ordner)

    rcon_hl_net.inc
    template.inc

    config (Ordner)
    config.php

    includes (Ordner)

    language.php
    security.php

    language.php (Ordner)
    english
    german
    etc..

    themes (Ordner)
    Styles

    mappics (Ordner)

    Map Karten

  • Wenn eine Datei included wird, darf sie keine neue Session starten, es sei denn es wurde im hauptteil keine gestartet.
    Wie sieht dein Pfad aus?
    I.d.R. included deine "Hauptdatei" (meistens index.php) die Erweiterungen dynamisch, z.B: index.php?modul=rcon
    In dem Fall, einfach die session_start() durch ein // auskommentieren und nochmals schauen was passiert

    MfG
    Daniel

  • Hab ich auch schon versucht rausklammern löschen etc dann ist zwar diese Meldung weg aber geht immer noch nicht wenn ich dann mir die Regeln oder Bannliste abgucken will bin ich wieder ausgeloggt kann mir nur die Server Übersicht angucken wieviele Leute Steamid name kick ban aber das geht auch nicht ich hab das Webinterface soweit wie ich grad bin ma auf meinem Root hochgeladen

    Vielleicht ma Laden und selbst angucken
    wäre wirklich sehr nett

    http://www.thanatoswow.de/downloads/Webinterface.rar

  • Also der Security Fehler ist raus aber da kommt der gleich der Nächste

    Der Fehler war das vor dem <php eine Zeile Leer war


    Zitat

    Fatal error: Maximum execution time of 60 seconds exceeded in C:\Programme\Apache xammp\xampp\htdocs\Webinterface\classes\rcon_hl_net.inc on line 422/quote]


    Zeile 422 ist die hier


    [quote]$buffer = fread ($this->socket, 1);

  • Ich tippe mal darauf dass der Handler "socket" in der Klasse falsch ist resp. nicht existiert.
    Sind alle Werte richtig eingegeben?


    Kann es sein dass der Code in einer Schleife (for, while, usw...) steht? Diese koennte ggf. aus irgend einem Grund unendlich sein...

    Btw: Fuer RCON Kommandos schlage ich dir HLSW vor, da dieses System auf dne ersten Blick nur dies kann...

    MfG
    Daniel