Hallo,
Ik zit met een probleem die volgens mij vaak voorbijkomt, maar ik heb op internet geen juiste oplossing kunnen vinden. Ik heb namelijk een inlogveld die naar login.php verwijst. Op deze login.php moet een foutmelding komen of als het wachtwoord en de gebruikersnaam kloppen via headers:location naar een volgende pagina gaan.
Dit werkt prima, maar ik wil dat de foutmeldingen in de lay-out komen. Daarom heb ik het script in het content-gedeelte van mijn site gezet, waardoor de foutmeldingen op de juiste plek komen. In de header van de website (dus voor het script) wordt het winkelwagentje weergegeven. Ik kan niet vinden wat hier het probleem is, maar als ik hem weghaal is het probleem er nog. Echter dan wordt er een regelnummer gegeven waarop de openingstag van php staat om het script te doen.

Is het mogelijk dat ik de script voor de '<html>'-tag draai en dat de errors dan in het content-gedeelte wordt weergegeven?
Alvast bedankt.
De stelregels is: output - dat is je html - altijd als laatste

een session_start() altijd als eerst.

<?php
session_start();

// rest van je php -code
?>
en dan volgt je html
<html>
   <head>
   </head>
   <body>
   </body>
</html>


Maar blijkbaar kan jij niet zoeken, want als je al headers already intikt bij een zoekmachine dan kotst die al ettelijke mogelijke oplossingen uit.
Nou nou nou, blijkbaar kan jij geen hele post lezen. 't Is trouwens ook geen antwoord op mijn vraag, want hoe worden de errors dan in het content-gedeelte weergegeven?
Youri, sorry, maar Noppes heeft wel gelijk. Het komt er op neer dat je al output geeft ( je html ) , ergens halverwege wil je in PHP nog errors afvangen en outputten ( in je content ) en dat is wat de "headers already sent" fouten geeft. Als je op Google gezocht had, was je er achter gekomen wat de reden was dat je die error kreeg, of je de link kunt leggen is een tweede, in het begin is het vaak lastig om direct de oorzaak te weten.

Noppes had natuurlijk niet zo bot moeten reageren, daar geef ik je wel gelijk in maar hij heeft wel gelijk.

Wat je moet doen is voordat je HTML terug geeft ( outputs in echo of sterker, gewoon HTML zelf ) eerst je PHP logica moet afronden. In je html kun je wel gewoon echo`s gebruiken, dus eerst de login errors afvangen, opslaan in een variabele en die echoen als je in je HTML zit. Dan kun je ze plaatsen in je content gedeelte.

Reageren