Toon posts:

[php] header werkt opeens niet meer

Pagina: 1
Acties:
  • 513 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Na het versturen van een mailformulier, moet de bezoeker naar een bedanktpagina. Daarvoor gebruikte ik de volgende regel:
header("Location: bedankt.html");

Dit heeft het tijden prima gedaan, maar nu krijgt de bezoeker opeens een witte, lege pagina te zien. (geen bedankt.html dus). Kan het zijn dat het komt doordat de site nu op een server met PHP4 staat?

  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
Zou niet uit moeten maken. Controleer eens hoe de header er precies uit ziet die je terug krijgt, zet error_reporting(E_ALL) aan en kijk in de source van de HTML

  • Skate2000
  • Registratie: November 1999
  • Laatst online: 29-12-2024
Als je refreshed, doet hij het dan wel? Anders zou het kunnen zijn dat er een pagina gecached is.. :)

Verwijderd

Topicstarter
Op maandag 17 juni 2002 19:09 schreef Glimi het volgende:
Zou niet uit moeten maken. Controleer eens hoe de header er precies uit ziet die je terug krijgt, zet error_reporting(E_ALL) aan en kijk in de source van de HTML
Geeft helemaal geen error dan.

Verwijderd

Topicstarter
Op maandag 17 juni 2002 19:10 schreef Skate2000 het volgende:
Als je refreshed, doet hij het dan wel? Anders zou het kunnen zijn dat er een pagina gecached is.. :)
Was het leven maar zo simpel.... >:)

  • SWINX
  • Registratie: Juni 2001
  • Laatst online: 02-06 23:18
en als je er een
code:
1
header("HTTP/1.0 200 OK");

voorzet?

Ik had eerst ook een vaag probleem en door de 200-status kwam het weer goed :)

Mannen komen van Mars Tweakers, vrouwen van Venus Bokt


  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
Op maandag 17 juni 2002 19:29 schreef SWINX het volgende:
en als je er een
code:
1
header("HTTP/1.0 200 OK");

voorzet?

Ik had eerst ook een vaag probleem en door de 200-status kwam het weer goed :)
Een 200 :? Een location zou juist een 302 Object Moved moeten geven :?

Verwijderd

Topicstarter
Op maandag 17 juni 2002 19:29 schreef SWINX het volgende:
en als je er een
code:
1
header("HTTP/1.0 200 OK");

voorzet?

Ik had eerst ook een vaag probleem en door de 200-status kwam het weer goed :)
Nee, ook dit helpt niet. Geeft gewoon een witte lege pagina.. :(

  • SWINX
  • Registratie: Juni 2001
  • Laatst online: 02-06 23:18
Op maandag 17 juni 2002 19:37 schreef james_bond_007 het volgende:

[..]

Nee, ook dit helpt niet. Geeft gewoon een witte lege pagina.. :(
het je een url?

Mannen komen van Mars Tweakers, vrouwen van Venus Bokt


Verwijderd

Topicstarter
Op maandag 17 juni 2002 19:39 schreef SWINX het volgende:

[..]

het je een url?
http://www.mea-vota.nl/form.php

  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
-Heb je al output gegenereerd voordat je de header doet (spatie voor de <? bijv)
-Heb je soms al error_reporting(E_ALL) bovenaan het script gezet :? (niet weghalen dus :P )

Verwijderd

Topicstarter
Op maandag 17 juni 2002 19:46 schreef Glimi het volgende:
1. Heb je al output gegenereerd voordat je de header doet (spatie voor de <? bijv)
2. Heb je soms al error_reporting(E_ALL) bovenaan het script gezet :?
1. Nop, er zijn helemaal geen witte regels in het script.

2. Dat error_reporting(E_ALL) heb ik weggehaald.

  • martinvw
  • Registratie: Februari 2002
  • Laatst online: 14-12-2025
kopieer het bestand eens en noem de kopie *orginele naam*.phps dan kunnen we de bron bekijken. :) of post hem vooral de bovenkant ofzo, misschien /n of een /r?

Verwijderd

Topicstarter
Op maandag 17 juni 2002 19:57 schreef M4rt1nvW het volgende:
kopieer het bestand eens en noem de kopie *orginele naam*.phps dan kunnen we de bron bekijken. :) of post hem vooral de bovenkant ofzo, misschien /n of een /r?
Zie www.mea-vota.nl/verstuur.phps
Dit is het script wat gebruikt wordt om de mail te versturen en door te verwijzen naar de bedankt-pagina (wat dus niet gebeurt).

Hier is tevens een mailfunctie toegevoegd, aangezien mail() niet ondersteund wordt door server.

  • WouZz
  • Registratie: Mei 2000
  • Niet online

WouZz

Elvis is alive!

Weet je zeker dat display_errors aan staat in je php.ini? Die staat standaard namelijk uit in de php.ini-recommended..

On track


  • CyberSnooP
  • Registratie: Augustus 2000
  • Laatst online: 31-03 16:47

CyberSnooP

^^^^ schrijft --->

Op dinsdag 18 juni 2002 00:42 schreef WouZz het volgende:
Weet je zeker dat display_errors aan staat in je php.ini? Die staat standaard namelijk uit in de php.ini-recommended..
Ik neem aan dat hij zelf geen server-admin is, maar hij kan natuurlijk phpinfo() checken.

Enkele Debug-methoden:
• Haal de header eens weg en kijk dan in de source van de pagina die wordt geopend.
• Maak van die n_mail eens een print
• Maak van die header eens een include.
Beetje een irritante manier van debuggen natuurlijk, maar je kunt o.a. wel wat beter nagaan in welk deel van je file de fout zit.

|_____vakje______|


Verwijderd

Topicstarter
Ik heb even stap voor stap alles uit het script verwijderd, maar
code:
1
header("Location: bedankt.html");

werkt pas als het alleen in het script staat. Er staan verder geen witte regel of er wordt niks geprint.
Vreemd...

  • bigtree
  • Registratie: Oktober 2000
  • Laatst online: 07-07 11:51
Is dit misschien de oplossing:
In PHP version 4.2.0 (as opposed to 4.1.1) I noticed that my script couldn't send headers even though I had no "echo" commands above the header().

However, I had some function calls to my own primitive functions, but they in turn did not call "echo".

Just looking up a $_POST["var"] made it impossible to perform a header() afterwards.

The solution was to put an "@" in front of every function call and variable lookup above the header()-call.

http://www.php.net/manual/en/function.header.php

Lekker woordenboek, als je niet eens weet dat vandalen met een 'n' is.


  • capedro
  • Registratie: Oktober 2000
  • Laatst online: 20-05 09:15
Kan je beter in je verstuur.php niet gewoon de HTML tags plaatsen... die je vindt in je bedankt.html :?
code:
1
2
3
4
5
6
7
8
9
10
11
12
<?php
   //Verstuur de gegevens
   //en controleer ze eventueel.
?>
<html>
  <head>
    <title>Bedankt!</title>
  </head>
  <body>
    <center><h1>BEDANKT!</h1></center>
  </body>
</html>

My weblog


Verwijderd

Topicstarter
Op dinsdag 18 juni 2002 10:31 schreef bigtree het volgende:
Is dit misschien de oplossing:
In PHP version 4.2.0 (as opposed to 4.1.1) I noticed that my script couldn't send headers even though I had no "echo" commands above the header().

However, I had some function calls to my own primitive functions, but they in turn did not call "echo".

Just looking up a $_POST["var"] made it impossible to perform a header() afterwards.

The solution was to put an "@" in front of every function call and variable lookup above the header()-call.

http://www.php.net/manual/en/function.header.php
Hiermee is het inderdaad opgelost! Thanx!

Wel erg raar en ik had hier nog nooit van gehoord. Maar gelukkig zijn er nog Tweakers.... :)
Pagina: 1