login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Header already sent error

Offline SomaQan - 12/03/2007 19:39
Avatar van SomaQanPHP beginner ik heb een artikel gelezen op wmcity over

`Header already sent`

Maar ik kom er ff niet uit. Dit is het script waar het fout gaat

  1. <?php
  2. if($_SESSION['log'] != 1)
  3. die("U dient ingelogd te zijn.<br /><a href=\"inloggen.php\">Klik hier om in te loggen.</a>");
  4. ?>


Error
  1. Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/deboer/domains/deboermedia.nl/public_html/admin/inloggen.php:1) in /home/deboer/domains/deboermedia.nl/public_html/admin/inloggen.php


ik het artikel door genomen maar daar doet hij een voorbeeld met een cookie ik werk met Sessions

Hoe kan ik session_start(); gebruiken in mij layout zonder een error te krijgen

14 antwoorden

Gesponsorde links
Offline Rens - 12/03/2007 19:42
Avatar van Rens Gouden medaille

Crew algemeen
http://www.sitemasters.be/FAQ/2/Foutmeldingen#faq2
Door te zoeken.
Dit is veel vaker gevraagd...
Offline SomaQan - 12/03/2007 19:52 (laatste wijziging 12/03/2007 20:02)
Avatar van SomaQan PHP beginner gelezen maar het werkt niet 

ik moets dit boven aan mij pagina zetten

  1. <?php
  2. ?>


maar ik heb nog steeds errors
Offline Clemens32 - 12/03/2007 19:54 (laatste wijziging 12/03/2007 20:03)
Avatar van Clemens32 PHP interesse dan moet je zorgen dat je headers niet eerst verstuurd worden of maak ipv header() gebruik van <meta refresh.......>

Maar dit meot ook werken:

Offline Stijn - 12/03/2007 20:02
Avatar van Stijn PHP expert @Clemens32: eerst ob_start(); en dan session_start();

@all: gebruik toch code tags.
Offline Ultimatum - 12/03/2007 22:36
Avatar van Ultimatum PHP expert @stijn maakt niet uit want ik doe ook altijd eerst session_start en dan ob_start..
Offline Ibrahim - 12/03/2007 22:39
Avatar van Ibrahim PHP expert Ik heb vandaag nog een topic gesloten over dit onderwerp. Mensen, zoeken !!!

Moet er soms een voorpagina artikel komen zodat iedereen het weet ??
Offline Stijn - 12/03/2007 22:41
Avatar van Stijn PHP expert
Citaat:
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent
En ik zeg vanwel Laat hem eerst die session bufferen en dan die output (zoiets).
Offline phpfreak - 13/03/2007 15:07
Avatar van phpfreak PHP beginner indien het nog niet opgelost is, de pagina mag niet geinclude worden, tenzij op de eerste regel van de pagina die deze include, dus als je bvb index.php hebt en je include blabla.php, moet die <? ob_start(); ?> in index.php 1ste lijn staan, niet in blabla.php
Offline Ultimatum - 13/03/2007 15:41
Avatar van Ultimatum PHP expert @hierboven
<?php
ob_start();
?>

kan ook nog..
Offline Barato - 13/03/2007 16:07
Avatar van Barato Nieuw lid phpfreak, als je niet weet waar je het over hebt, zeg dan gewoon niets.
Offline Grayen - 13/03/2007 16:11 (laatste wijziging 13/03/2007 16:12)
Avatar van Grayen PHP ver gevorderde volgens mij vergeten jullie de functie ob_end_flush . Het is toch altijd:

  1. <?php
  2. ob_start(); // helemaal boven aan mogen geen spaties voor zitten
  3. // de rest van alle php code
  4. ob_end_flush(); // op het einde van de pagina
  5. ?>


Dus in het geval van SomaQan

  1. <?php
  2. if($_SESSION['log'] != 1)
  3. die('U dient ingelogd te zijn.<br /><a href="inloggen.php">Klik hier om in te loggen.</a>');
  4. ?>

Offline Ultimatum - 13/03/2007 16:15
Avatar van Ultimatum PHP expert De functie ob_end_flush is niet verplicht zover ik weet want ik gebruikt het nooit..
Offline Godlord - 13/03/2007 17:06
Avatar van Godlord PHP gevorderde Ik gebruik het ook nooit dus het is niet verplicht. Heb deze errors niet meer als ik ob_start(); gebruikt. Misschien komt het door 2 keer iets te zenden.

Dus het zal iets als dit zijn:
  1. <?php
  2. if($_SESSION['log'] != 1) {
  3. die("U dient ingelogd te zijn.<br /><a href=\"inloggen.php\">Klik hier om in te loggen.</a>");
  4. }
  5. ?>
Offline Ibrahim - 13/03/2007 17:15 (laatste wijziging 13/03/2007 17:15)
Avatar van Ibrahim PHP expert dat jij het niet gebruikt, betekent niet meteen dat het niet verplicht is 

Ik had gelezen ergens dat php op het einde van het parsen dat zelf doet

en het antwoord is al 6x ofzo gegeven, dus niemand hoeft meer ob_start(); op te geven als antwoord 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.281s