Warning: Cannot modify header information - headers already sent by

Overzicht

Sponsored by: Vacatures door Monsterboard

Top Low-Code Developer Gezocht!

Bedrijfsomschrijving Unieke Kansen, Uitstekende Arbeidsvoorwaarden & Inspirerend Team Wij zijn een toonaangevende, internationale organisatie die de toekomst van technologie vormgeeft door het creëren van innovatieve en baanbrekende oplossingen. Ons succes is gebaseerd op een hecht en gepassioneerd team van professionals die altijd streven naar het overtreffen van verwachtingen. Als jij deel wilt uitmaken van een dynamische, vooruitstrevende en inspirerende werkomgeving, dan is dit de perfecte kans voor jou! Functieomschrijving Als Low-Code Developer ben je een cruciaal onderdeel van ons team. Je werkt samen met collega's uit verschillende disciplines om geavanceerde applicaties te ontwikkelen en te optimaliseren met behulp van Low-code

Bekijk vacature »

Branco Rensen

Branco Rensen

07/01/2014 14:11:54
Anchor link
Hallo allemaal,
Ik krijg een php error. De error is als volgt.
Warning: Cannot modify header information - headers already sent by(output started at /home/grtechni/domains/britdiensten.nl/public_html/instructie/config.php:18) in /home/grtechni/domains/britdiensten.nl/public_html/instructie/safe.php on line 26

Wie o Wie kan me hiermee helpen?

Met vriendelijke groet,
Branco Rensen
BR-ITDiensten
 
PHP hulp

PHP hulp

29/03/2024 10:40:29
 
Bart V B

Bart V B

07/01/2014 14:18:03
Anchor link
Een paar regels code zou handig zijn rond lijn 26.
 
Wouter J

Wouter J

07/01/2014 14:18:33
Anchor link
Zucht... deze vraag komt minimaal 1 keer per week op het forum.

Ga eens naar de homepage (http://phphulp.nl/ ) en zoek voor de grap eens op die pagina naar "headers already sent"... Veel makkelijker kunnen we het niet maken om het antwoord voor je beschikbaar te maken, je hebt niet eens google nodig!
 
Michael -

Michael -

07/01/2014 14:18:52
Anchor link
Dit houd in dat je ergens een header() gebruikt nadat er al html is weergegeven of een echo of print is geweest. Een header() moet altijd boven alle output staan.
Kom je er niet uit, laat dan het stukje zien waarin de fout zich optreed.
Gewijzigd op 07/01/2014 14:19:34 door Michael -
 
Kris Peeters

Kris Peeters

07/01/2014 14:21:48
Anchor link
Je mag nooit "eerst karakters echo'es" en daarna nog een header() aanroepen.

Bij jou gaat het dus fout in config.php . config.php stuurt karakters naar de gebruiker.
Waarschijnlijk ligt dit aan spaties of nieuwe lijnen, net na de ?> .
Dat mag niet.

Er mag geen enkel teken komen voor <?php
Er mag geen enkel teken komen na ?>

De simpelste oplossing voor jou, is ?> gewoon weglaten, in config.php
 
Branco Rensen

Branco Rensen

07/01/2014 14:42:55
Anchor link
@Bart V B
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
   else{
   setcookie("user_id", "", time() - 3600);
   setcookie("user_password", "", time() - 3600);
   echo "Cookies incorrect. Cookies verwijderd.";
   header("Location: paneel.php");
  }
 }
else{
  header("Location: index.php");
 }
}

?>
Gewijzigd op 07/01/2014 14:48:16 door Branco Rensen
 
Jeroen VD

Jeroen VD

07/01/2014 14:48:13
Anchor link
ja daar heb je het al.
'Je mag nooit "eerst karakters echo'es" en daarna nog een header() aanroepen.'
vergelijk regel 5 en 6 eens. welke komt eerst en welke geeft output?
 
Branco Rensen

Branco Rensen

07/01/2014 14:54:37
Anchor link
@jeroen VD Eeerst de echo moet worden weergeven en daarna moet de bezoeker worden doorgestuurd
 
Jeroen VD

Jeroen VD

07/01/2014 14:56:53
Anchor link
ja dan moet je wat anders verzinnen om die echo op een later tijdstip te laten echoen
 
Kris Peeters

Kris Peeters

07/01/2014 14:58:34
Anchor link
Branco Rensen op 07/01/2014 14:54:37:
@jeroen VD Eeerst de echo moet worden weergeven en daarna moet de bezoeker worden doorgestuurd


Nee.
Dat mag niet.

Dat is niet waarvoor je haeder kan en mag gebruiken.

-----

Trouwens, hoe stel je je dat zelf voor?
Hoe lang dacht je dat die boodschap in beeld zou komen?
 
Branco Rensen

Branco Rensen

07/01/2014 15:00:38
Anchor link
@kris peeters Heel even maar alleen om een melding te weergeven dat de Cookies incorrect zijn.
 
Jeroen VD

Jeroen VD

07/01/2014 15:03:09
Anchor link
2 milliseconden?
 
Kris Peeters

Kris Peeters

07/01/2014 15:08:48
Anchor link
Even een snelcursus server / client.

- De gebruiker doet een verzoek. Door een URL in te tikken of op een link te klikken.
- php genereert een HTML pagina. Dit duurt een aantal miljoenste van een seconde. Dan wordt die gegenereerde pagina in 1 ruk naar de gebruiker gestuurd.
- Op dat moment staat de HTML-pagina op de computer van de gebruiker. PHP heeft dan niets meer te zeggen; kan niets meer doen.


Je kan niet verwachten dat php halve pagina's naar de gebruiker stuurt; daarna de pagina terug ververst.
Je kan geen tussentijdse boodschappen sturen.

Je genereert alles in 1 ruk en stuurt het naar de gebruiker.


Dus: als je van plan bent om header te gebruiken, stuur je geen echo's. En vice versa
 
Lionel Roels

Lionel Roels

25/06/2020 12:10:18
Anchor link
Ik loste het op met js.
Quote:
echo "<br /><br />You will be redirected to the application...";
echo "<script>setTimeout(\"location.href = 'index.php';\",5000);</script>";
 
- Ariën  -
Beheerder

- Ariën -

25/06/2020 13:27:51
Anchor link
Niet echt een goede oplossing, omdat je beter de header als eerste moet uitvoeren.

En tevens is het ook niet nodig om een oud topic omhoog te halen. Dit topic sluit ik bij deze.
 
 

Dit topic is gesloten.



Overzicht

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.