Oke wanneer ik mensen informatie naar een database laat verzenden met een formulier (dit werkt perfect) moeten de mensen nadat ze de catalogus bekijken (waar hun informatie dan bij zou moeten komen te staan) eerst op F5 drukken. Kan ik dit ook automatisch laten doen in PHP??

Dus elke keer dat ze op menuknop Catalogus drukken dat hij de nieuwste versie van die pagina weer geeft?
nee dat kan niet
doe het dan gewoon met een meta tag
<META HTTP-EQUIV="Refresh" CONTENT="20;URL=bestand.php">
zoiets
Dan krijg ik een CGI error......

CGI Error
The specified CGI application misbehaved by not returning a complete set of HTTP headers.
ohw daar heb ik weinig verstand van van CGI
oke CGI probleem opgelost maar werkt niet jammer genoeg. Bezoekers moeten maar op F5 drukken dan.
<META HTTP-EQUIV="Refresh" CONTENT="20;URL=bestand.php"> moet je wel tussen <head> en </head> zedtten hè?

(ja, ik zie steets vaker mensen die zo'n metatag bijv. pas na hun menubalk erin plakken...)
zoek eens op headers pragma en no-cache
staat tussen <head></head> alleen dan werkt het nog niet. Hij ververst de pagina alleen bij F5 indrukken of CTRL+F5
Het moet werken zo, allen het nadeel is dat hij blijft refreshen als ik het goed heb. Je kunt toch beter die <META HTTP-EQUIV="Refresh" CONTENT="20;URL=bestand.php"> kunnen echo-en wanneer hij dat moet. Mijn ideetje:
Na de post met de parameter ?refresh=true naar bestand.php gaan.
daarin:
<head>
yada yada
<?php
if ($_REQUEST['refresh'] == 'true') {
echo '<META HTTP-EQUIV="Refresh" CONTENT="1;URL=bestand.php">';
}
?>
</head>
of :
<?php
// bovenaan de pagina
ob_start();


// body

// als er op verzenden wordt gedrukt
if(isset($_POST["verzendknop"])){
header("Location: joulokatie.php");
}

// onderaan pagina, flush stoppen door
ob_end_flush();

/* ob_start() zorgt er dus voor dat alle php code
van te voren wordt inverzameld,
tenminste, zo doe ik het altijd ;-) */

?>

Gr.

Reageren