Via PHP hulp ben ik nu begonnen met PHP formulieren
en kan leuk het formulier op beeld krijgen maar dan?
Heb gebruikt het uitgewerkte voorbeeld van "Mijn eerste formulier"
en het tweede deel "verwerk2.php"
In dit formulier kan ik opgeven voornaam, achternaam, dag, maand, en jaar
( het formulier ging niet verder als 1950
maar ik heb al aan kunnen passen dat mijn geboortejaar 1946 ook kan.
het tweede deel controleert of alles is ingevuld en klaar voor verzending laat ook zien wat er is ingevuld.
Wat ik mis in het verhaal, hoe krijg ik de gegevens van het ingevulde formulier
verzonden naar het emailadres van mijn website.
Ik heb stap voor stap alles zitten doorlezen maar mis dat stuk?
Wie wil mij verder helpen.
Met vriendelijke groet Johan
Code-tags toegevoegd. Gelieve in het vervolg deze zelf te plaatsen.
Wil ik natuurlijk graag doen maar ik zie door de bomen het bos niet.
Heb alles uitgeprint met als doel zoek de verschillen. Wil u mij een voorbeeld geven?
Ariën heeft gelijk. Feitelijk bouw je je pagina's (of liever je applicatie) in twee delen.
Het eerste deel is je applicatie waarin je gaat bepalen wat er moet gaan gebeuren.
In jouw redelijk eenvoudige code kan dit al variëren in de volgende dingen:
1. een leeg formulier tonen
2. een formulier tonen met foutmeldingen (nadat deze verstuurd is maar de validatie mislukt is)
3. de gegevens van het formulier verwerken (de mail sturen dus) en de gebruiker doorsturen naar een andere pagina.
Wanneer een gebruiker doorgestuurd moet worden dan is het niet meer logisch om nog een HTML pagina op te bouwen en vervolgens de gebruiker door te sturen.
in het tweede deel bouw je je HTML op.
Misschien is het een idee om dit eens te lezen, vervolgd door dit en dan je code nog eens te herzien.
Ik was al blij met het eerdere beeld maar alles blijk nu toch moeilijker dan ik dacht.
Ga de tweede link eens proberen en mocht het me dan nog niet lukken, schrijven de reünisten zich maar ouderwets in via een handgeschreven formulier per post.
Het gaat er gewoon om dat je boven je HTML-code je PHP-script uitvoert, en je in de HTML je hoogstens beperkt tot het tonen van diverse waardes en foutmeldingen.
Doordat je een u met umlaut gebruikt in je onderwerp treed er een foutmelding op. Mogelijk ontvang je daardoor het bericht niet.
De volgende foutmelding treed op "said: 550 Subject contains invalid characters. (in reply to end of DATA command)"
Ofterwijl, Onderwerpt bevat speciale tekens die niet 'juist' zijn.
Als je perse de ü wilt gebruiken i.p.v. u zul je wat utf_encode/decode moeten toevoegen waarschijnlijk.
We hebben het over de ü an reünie, die gaan we vervangen.
Het lukt me nu al de mooiste formulieren te maken maar er wordt geen mail verzonden.
We gaan het proberen.
Lijn 65 t/m 75 (waarom zo veel witruimte?) aanpassen naar:
if(mail($ontvanger, $onderwerp, $inhoud, implode("\r\n", $headers), "-f".$afzender)) {
// redirect de gebruiker
header('Location: feedback.html');
exit;
} else {
$errors['mailproblem'] = "Er is aan onze kant wat fout gegaan bij het versturen van het bericht. Gelieve ons handmatig een e-mail te sturen naar [email protected]";
}
Zie je dan die genoemde foutmelding, of wordt je netjes doorgestuurd?
Verder raden we nog steeds aan om de PHP-afhandeling boven je HTML te plaatsen, natuurlijk je HTML-document op orde te hebben.