Header redirect werkt niet.
Ik weet dat er talloze topics op het internet te vinden zijn hierover zowel in het Nederlands als in het Engels, alleen lukt het mij maar niet om dit op te lossen.
Nu heb ik een contact form op mijn index.php pagina, en wil ik dat mijn bezoekers worden door gelinkt zodra zij de form verstuurd hebben. Het probleem is dus dat mijn header redirect in mijn send.php maar niet wilt werken.
mijn send.php:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
header( 'Location: http://www.pagina.com' ) ;
$Email_text = $_POST['Email_text'];
$Bericht_text = $_POST['Bericht_text'];
$File = "berichten.txt";
$fhandle = fopen($File, 'a');
fwrite($fhandle,"\n");
fwrite($fhandle,"Email_text: ");
fwrite($fhandle,$Email_text);
fwrite($fhandle,"\n");
fwrite($fhandle,"Bericht_text: ");
fwrite($fhandle,$Bericht_text);
fwrite($fhandle,"\n");
fclose($fhandle);
?>
header( 'Location: http://www.pagina.com' ) ;
$Email_text = $_POST['Email_text'];
$Bericht_text = $_POST['Bericht_text'];
$File = "berichten.txt";
$fhandle = fopen($File, 'a');
fwrite($fhandle,"\n");
fwrite($fhandle,"Email_text: ");
fwrite($fhandle,$Email_text);
fwrite($fhandle,"\n");
fwrite($fhandle,"Bericht_text: ");
fwrite($fhandle,$Bericht_text);
fwrite($fhandle,"\n");
fclose($fhandle);
?>
Apart is, dat wanneer ik deze in een php test widget run, hij het ook niet doet. Maar zodra ik de link verander in
header( 'Location: http://www.yoursite.com/new_page.html') ; (link gevonden op internet)
doet hij het wel.. in de widget dan, nog steeds niet op mijn website. Dat is dan ook de enige link die werkt in de script in deze widget?
Ik host op 000webhost, en laat alle berichten naar een .txt file in mijn FTP komen. Wellicht dat dit relevant is.
Hoop dat ik geholpen kan worden,
mvg,
Hans
Na een header zou een exit moeten. Betekent dat de regels 5 en verder niet uitgevoerd zouden worden.
Obelix en Idefix op 20/12/2015 21:23:38:
Na een header zou een exit moeten. Betekent dat de regels 5 en verder niet uitgevoerd zouden worden.
Dit als ik het goed heb?
header( 'Location: http://www.yoursite.com/new_page.html' ) ;
exit();
Werkt nog steeds niet helaas, wanneer ik de form instuur gaat hij naar een 000webhost pagina zoals die eerder ook al deed.. Bedankt voor je reactie overigens.
Zet je header()... helemaal onderaan?
Eddy E op 20/12/2015 22:02:09:
Zet je header()... helemaal onderaan?
Voorheen niet, maar na de reactie van Obelix&Idefix zette ik hem samen met exit(); net boven de ?> tag aangezien ik wil dat de hele script uitgevoerd wordt.
Gewijzigd op 20/12/2015 22:21:59 door Hans Bergen
En leverde dat het gewenste resultaat op? Oftewel is dit probleem opgelost?
Thomas van den Heuvel op 20/12/2015 22:38:26:
En leverde dat het gewenste resultaat op? Oftewel is dit probleem opgelost?
Helaas niet, redirect nog steeds niet nadat ik de form instuur.
Kom je wel op die pagina?
- SanThe - op 20/12/2015 23:14:17:
Kom je wel op die pagina?
Welke pagina bedoel je? Wanneer ik de form submit kom ik op de fout pagina van mijn hosting helaas
Quote:
Wanneer ik de form submit kom ik op de fout pagina van mijn hosting helaas
Mja grote kans dat er dus iets scheelt in bovenstaande code.
Zet het weergeven en melden van fouten eens aan door het toevoegen van de volgende code aan het begin van je script:
Zet de header() aanroep tijdelijk tussen /* commentaarhaken */.
Overigens zal je programmaflow zoiets zijn:
A --> POST --> B --> REDIRECT --> C.
Je laat ons alleen B zien, je geeft ons dus maar een klein stuk van de puzzel...
Thomas van den Heuvel op 20/12/2015 23:39:44:
Mja grote kans dat er dus iets scheelt in bovenstaande code.
Zet het weergeven en melden van fouten eens aan door het toevoegen van de volgende code aan het begin van je script:
Zet de header() aanroep tijdelijk tussen /* commentaarhaken */.
Overigens zal je programmaflow zoiets zijn:
A --> POST --> B --> REDIRECT --> C.
Je laat ons alleen B zien, je geeft ons dus maar een klein stuk van de puzzel...
Quote:
Wanneer ik de form submit kom ik op de fout pagina van mijn hosting helaas
Mja grote kans dat er dus iets scheelt in bovenstaande code.
Zet het weergeven en melden van fouten eens aan door het toevoegen van de volgende code aan het begin van je script:
Zet de header() aanroep tijdelijk tussen /* commentaarhaken */.
Overigens zal je programmaflow zoiets zijn:
A --> POST --> B --> REDIRECT --> C.
Je laat ons alleen B zien, je geeft ons dus maar een klein stuk van de puzzel...
Bedankt voor je bericht.
Index.php is een enorm lang script welke niet door mijzelf geschreven is. Het is een groot gekocht script welke goed functionaliseert, hier ligt het probleem niet in.
Want alles in de index werkt prima, send.php werkt ook aangezien ik de formuliergegevens ontvang en die script in de send.php heb staan, enige probleem is dat Header in mijn send.php niet werkt en dus niet doorlinkt, dit heeft dus niets met de index te maken. Send.php pakt de header tag gewoon niet..
Gewijzigd op 21/12/2015 00:07:14 door Hans Bergen
Hans Bergen op 21/12/2015 00:06:11:
... aangezien ik de formuliergegevens ontvang en die script in de send.php heb staan, enige probleem is dat Header in mijn send.php niet werkt ...
Wat staat er nog allemaal voor de header()?
- SanThe - op 21/12/2015 00:12:41:
Wat staat er nog allemaal voor de header()?
Hans Bergen op 21/12/2015 00:06:11:
... aangezien ik de formuliergegevens ontvang en die script in de send.php heb staan, enige probleem is dat Header in mijn send.php niet werkt ...
Wat staat er nog allemaal voor de header()?
Niets;
Zo ja, zet dan eens echo 'test'; voor de header().