Door
Onbekende gebruiker
op 10-03-2017 11:09
gewijzigd op 10-03-2017 11:09
3.230 views
Doormiddel van Javascript kun je als je op een button klikt een nieuw input veld aanmaken. Deze krijgen allemaal dezelfde name en class. Alles wordt nu doormiddel van een mailtje naar de user gestuurd. Alleen pakt Javascript en PHP de laatst ingevulde input field. Dit is de code voor het aanmaken van een nieuw veld in Javascript:
Dit is de PHP code voor het verzenden voor de mail:
<?php
$naam = $_POST['naam'];
$email = $_POST['email'];
$number = $_POST['number'];
$option = $_POST['option'];
$to = $email; // Send email to our user
$subject = 'Web formulier'; // Give the email a subject
$message = '
Beste ,
'.$naam.' heeft de volgende personen nodig: '.$number.'x een '.$option.'.
We hopen u voldoende te hebben geinfomeerd!
?>
Het verzenden gaat goed, alleen pakt hij bij "volgende personen nodig" alleen de laatste ingevulde value's. Is het mogelijk om in een soort van loop te krijgen? Dat je krijgt: 4x een persoon1
2x een persoon2
Alle gegevens komen uit het form.
lijn 13 klopt nergens naar. Die hoort voor je ob_get_clean() op regel 12. Want dit is ook een onderdeel van je output die je in je mail wilt plaatsen.
?
Onbekende gebruiker
10-03-2017 16:23
gewijzigd op 10-03-2017 16:25
<?php
$naam = $_POST['naam'];
$email = $_POST['email'];
$datum = $_POST['datum'];
$to = $email; // Send email to our user
$subject = 'Web formulier'; // Give the email a subject
$message = '
Beste ,
'.$naam.' heeft de volgende personen nodig:';
ob_start(); // start output buffering
foreach ($_POST['number'] as $index => $value) {
echo $value.' keer een '.$_POST['option'][$index].'<br />';
}
$bezetting = 'op '.$datum.'
We hopen u voldoende te hebben geinfomeerd!';
ob_get_clean();
?>
Alleen de mail wordt na: Beste , (naam) heeft de volgende personen nodig:
afgekapt en dan worden de gegevens niet meer laten zien.
Je doet het nog niet goed, die afsluitende tekst hoort VOOR je $bezetting:
<?php
ob_start(); // start output buffering
$message = '
Beste ,
'.$naam.' heeft de volgende personen nodig:';
foreach ($_POST['number'] as $index => $value) {
echo $value.' keer een '.$_POST['option'][$index].'<br />';
}
echo 'op '.$datum.'
We hopen u voldoende te hebben geinfomeerd!';
$bezetting = ob_get_clean();
?>
Welke code-editor gebruik je? Want die zou eigenlijk al lang aangeslagen moet zijn op je vorige code die niet klopte.
?
Onbekende gebruiker
10-03-2017 16:30
Ik gebruik Sublime Text 2, maar krijg nog steeds niet meer data. Na de zin "heeft de volgende personen nodig;" krijg ik niets meer.
Wat zegt een print_r() voor je foreach over $_POST['number']
?
Onbekende gebruiker
10-03-2017 16:42
gewijzigd op 10-03-2017 16:48
Waar moet ik die plaatsen als ik die voor de foreach plaats krijg ik een error dat de foreach nog niet verwacht wordt. Kan het omdat ik na die eerste zin de message afsluit door ";"?