[PHP] Include foutje.

Pagina: 1
Acties:

  • littledreamer
  • Registratie: Juni 2002
  • Laatst online: 15-08-2025
Hallo mensen.

In een php file heb ik een protect.php geinclude voor de beveiliging.

bron:

<?
unset($session_user_id);
session_start();
if ($session_user_id>0){
} else {
header("location: index.php4");
exit();
}

?>

Maar als ik ingelogt ben in het systeem, en ik vraag deze pagina op krijg ik deze fout:

Warning: Cannot send session cache limiter - headers already sent (output started at c:\apache\htdocs\puttertje\mailinglist\mail_new.php4:1) in c:\apache\htdocs\puttertje\mailinglist\inc\protect.php4 on line 4

Iemand enig id??

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

output started at c:\apache\htdocs\puttertje\mailinglist\mail_new.php4:1

staat er toch?
www.php.net/header

Verwijderd

je moet volgens mij de regel session_start(); en die unset(...) omdraaien

[ Voor 0% gewijzigd door Verwijderd op 03-09-2002 12:30 . Reden: typo ]


  • littledreamer
  • Registratie: Juni 2002
  • Laatst online: 15-08-2025
Ja maar deze beveiliging moet erin blijven anders kunnen mensen dit bestand opvragen als ze het exacte pad weten.

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 28-08 12:00

Janoz

Moderator Devschuur®

!litemod

Probeer de foutmelding eens te lezen :). Je hoeft niks om te draaien, maar je moet wat weghalen.

letterlijke vertaling naar het nederlands:
Waarschiwing: Kan sessie meuk net verzenden - headers zijn al verzonden (De uitvoer is al begonnen in c:\apache\htdocs\puttertje\mailinglist\mail_new.php4 op regel 1)

kijk nu ff wat er op regel 1 staat (enter? spatie? html? en haal dat daar ff weg.......

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • littledreamer
  • Registratie: Juni 2002
  • Laatst online: 15-08-2025
Verwijderd schreef op 03 september 2002 @ 12:29:
je moet volgens mij de regel session_start(); en die unset(...) omdraaien
Warning: Cannot send session cache limiter - headers already sent (output started at c:\apache\htdocs\puttertje\mailinglist\mail_new.php4:1) in c:\apache\htdocs\puttertje\mailinglist\inc\protect.php4 on line 3

Warning: Cannot add header information - headers already sent by (output started at c:\apache\htdocs\puttertje\mailinglist\mail_new.php4:1) in c:\apache\htdocs\puttertje\mailinglist\inc\protect.php4 on line 7

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

session_start() is al uitvoer
en mag nix voor die Header komen

Doet iets met Cloud (MS/IBM)


  • littledreamer
  • Registratie: Juni 2002
  • Laatst online: 15-08-2025
Daar staat een stylesheet die erin moet blijven.
Janoz schreef op 03 september 2002 @ 12:39:
Probeer de foutmelding eens te lezen :). Je hoeft niks om te draaien, maar je moet wat weghalen.

letterlijke vertaling naar het nederlands:
Waarschiwing: Kan sessie meuk net verzenden - headers zijn al verzonden (De uitvoer is al begonnen in c:\apache\htdocs\puttertje\mailinglist\mail_new.php4 op regel 1)

kijk nu ff wat er op regel 1 staat (enter? spatie? html? en haal dat daar ff weg.......

  • littledreamer
  • Registratie: Juni 2002
  • Laatst online: 15-08-2025
Hoebedoel je dat precies?
D2k schreef op 03 september 2002 @ 12:41:
session_start() is al uitvoer
en mag nix voor die Header komen

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

D2k kletst onzin :)

Je hebt output op die plek, als je je sessie wilt kunnen gebruiken (die cookie-headers verstuurd) mag je GEEN output hebben VOOR de session_start().

Of jij die css daar wilt hebben of niet boeit niet, dan verplaats je je session_start maar naar het begin.
Dit staat dus ook wel uitgelegd in de php-manual bij mijn weten, iig bij de functie header die bedoeld is om eigen headers te sturen.

  • littledreamer
  • Registratie: Juni 2002
  • Laatst online: 15-08-2025
Okej mijn dank is zeer groot ik heb de oplossing al.

Ik heb het zo opgelost:

<?
include("inc/connect.php4");
include("inc/protect.php4");
?>

<style type="text/css">
body {
background-image: url(gfx-layout/bg-mailinglist.jpg);
background-repeat: no-repeat;
background-attachment: fixed;
}
</style>

<? rest van de php sjizzle ?>

  • grolle
  • Registratie: Oktober 2001
  • Laatst online: 08-07 18:53
Je zegt dat het zo werkt dus dan zit je goed ;)

Maar blijf er voor zorgen dat geen output hebt. Dus ook niet in connect.php4 of in een ander bestand dat je (in de toekomst) include

  • littledreamer
  • Registratie: Juni 2002
  • Laatst online: 15-08-2025
grolle schreef op 03 september 2002 @ 15:30:
Je zegt dat het zo werkt dus dan zit je goed ;)

Maar blijf er voor zorgen dat geen output hebt. Dus ook niet in connect.php4 of in een ander bestand dat je (in de toekomst) include
Hoebedoel je geen output?

Ik snap je niet helemaal :?

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

xingrs schreef op 03 september 2002 @ 17:19:
Hoebedoel je geen output?

Ik snap je niet helemaal :?

Weet je wat output betekend :?
Dan snap je toch ook wel wat "geen output" betekend? En met je probleem van vanmiddag en de antwoorden hier kan je toch wel deduceren waarom ie dat zegt :?

  • littledreamer
  • Registratie: Juni 2002
  • Laatst online: 15-08-2025
Ja inmiddels snap ik em al, had ff een wazig moment :)
Pagina: 1