Contactformulier HTML template werkend krijgen met PHP

Pagina: 1
Acties:

Onderwerpen

Vraag


Acties:
  • 0 Henk 'm!

Anoniem: 1269490

Topicstarter
Mijn vraag
Hoe krijg ik een voorgeprogrammeerd contact formulier werkend.

Relevante software en hardware die ik gebruik
HTML5, CSS3, Maak gebruik van Notepad++ om dit te bewerken

Wat ik al gevonden of geprobeerd heb
Heb een uur gegoogled op dit onderwerp, maar ik krijg alleen maar compleet voorgeprogrammeerde Contactformulieren die niet werken als ik hem toepas op mijn HTML.

Dit is de code die ik gebruik in HTML:
HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
                <fieldset>

                    <legend></legend>
                    <form action="contact.php" method="POST">
                        <p><label for="name">Naam:</label>
                        <input type="text" name="name" id="name" value="" /><br /></p>      
                        <p><label for="email">Emailadres:</label>
                        <input type="text" name="email" id="email" value="" /><br /></p>
                        <p><label for="email">Onderwerp:</label>
                        <input type="text" name="subject" id="subject" value="" /><br /></p>
                        <p><label for="message">Bericht:</label>    
                        <textarea cols="60" rows="11" name="message" id="message"></textarea><br /></p>
                        <p><input type="submit" name="send" class="formbutton" value="Send" /></p>
                    </form>
    
                </fieldset>


Ik weet inmiddels dat ik een contact.php moet hebben, hiervoor had ik de volgende gebruikt:
PHP:
1
2
3
4
5
6
7
8
9
10
11
<?php
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$formcontent="From: $name \n Message: $message";
$recipient = "emailaddress@here.com";
$subject = $_POST['subject'];
$mailheader = "From: $email \r\n";
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
echo "Thank You!";
?>


Ik kom er niet meer uit, ik hoop dat iemand mij op weg kan helpen.

Alle reacties


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Anoniem: 1269490 schreef op dinsdag 29 oktober 2019 @ 00:07:
Heb een uur gegoogled op dit onderwerp
Wat waren je zoektermen?
Anoniem: 1269490 schreef op dinsdag 29 oktober 2019 @ 00:07:
maar ik krijg alleen maar compleet voorgeprogrammeerde Contactformulieren die niet werken als ik hem toepas op mijn HTML.
Definieer "niet werken"? Krijg je foutmeldingen? Welke? Heb je al eens in de logfiles gekeken? Heb je al gedebugged? (Debuggen: Hoe doe ik dat?)
Anoniem: 1269490 schreef op dinsdag 29 oktober 2019 @ 00:07:Dit is de code die ik gebruik in HTML:
[...]
Ik weet inmiddels dat ik een contact.php moet hebben, hiervoor had ik de volgende gebruikt:
[...]
Nou, wat werkt daar niet aan?
Anoniem: 1269490 schreef op dinsdag 29 oktober 2019 @ 00:07:
Ik kom er niet meer uit, ik hoop dat iemand mij op weg kan helpen.
Ik mis nog steeds een concrete vraag ("ik kom er niet uit" is geen concrete vraag) en ik zie geen foutmeldingen. Ik hoop dat je begrijpt dat 't zo lastig is je goed te helpen...?

(Even los van 't feit dat je php script gevoelig is voor mailheader injection en dus een grote no-no is...)

[ Voor 16% gewijzigd door RobIII op 29-10-2019 02:26 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • +1 Henk 'm!

  • TweakerNummer
  • Registratie: September 2001
  • Niet online
Anoniem: 1269490 schreef op dinsdag 29 oktober 2019 @ 00:07:
Mijn vraag
Hoe krijg ik een voorgeprogrammeerd contact formulier werkend.

Relevante software en hardware die ik gebruik
HTML5, CSS3, Maak gebruik van Notepad++ om dit te bewerken

Wat ik al gevonden of geprobeerd heb
Heb een uur gegoogled op dit onderwerp, maar ik krijg alleen maar compleet voorgeprogrammeerde Contactformulieren die niet werken als ik hem toepas op mijn HTML.

Dit is de code die ik gebruik in HTML:
HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
                <fieldset>

                    <legend></legend>
                    <form action="contact.php" method="POST">
                        <p><label for="name">Naam:</label>
                        <input type="text" name="name" id="name" value="" /><br /></p>      
                        <p><label for="email">Emailadres:</label>
                        <input type="text" name="email" id="email" value="" /><br /></p>
                        <p><label for="email">Onderwerp:</label>
                        <input type="text" name="subject" id="subject" value="" /><br /></p>
                        <p><label for="message">Bericht:</label>    
                        <textarea cols="60" rows="11" name="message" id="message"></textarea><br /></p>
                        <p><input type="submit" name="send" class="formbutton" value="Send" /></p>
                    </form>
    
                </fieldset>


Ik weet inmiddels dat ik een contact.php moet hebben, hiervoor had ik de volgende gebruikt:
PHP:
1
2
3
4
5
6
7
8
9
10
11
<?php
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$formcontent="From: $name \n Message: $message";
$recipient = "emailaddress@here.com";
$subject = $_POST['subject'];
$mailheader = "From: $email \r\n";
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
echo "Thank You!";
?>


Ik kom er niet meer uit, ik hoop dat iemand mij op weg kan helpen.
Die code werkt als je een PHP server opzet, de mail server configureert in PHP en de HTML & PHP files kopieert naar de document root van de server.

Als PHP server kan je een development server starten (https://www.php.net/manua...commandline.webserver.php) en voor de SMTP-settings kan je met ini_set of php.ini aan de gang (https://zend18.zendesk.co...mail-Function-for-iSeries ).

Acties:
  • 0 Henk 'm!

  • AW_Bos
  • Registratie: April 2002
  • Laatst online: 23:58

AW_Bos

Liefhebber van nostalgie... 🕰️

En ik neem aan dat je ook validatie wilt hebben, voordat iemand voor de grap 30 keer op verzenden gaat drukken zonder wat in te vullen of rotzooi invult, en dat je graag wilt controleren of er daadwerkelijk een POST-request is gedaan, voordat het potentiele gevoelige informatie uitlekt in de vorm van een PHP-error. En dan heb ik het nog niet eens over flood-beveiliging tegen die 30 keer versturen, en de genoemde mail-header injection.

Als je een beetje op Google zoekt naar PHP Contact Script kom je vast wel wat tegen, maar zorg dat je ook weet wat het script doet, want er kunnen ook lekke scripts tussen zitten.

☀️ Goedemorgen zonneschijn! ☀️
☀️Ja, je maakt me zo gelukkig, en door jou voel ik me fijn! ☀️


Acties:
  • +2 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
AW_Bos schreef op woensdag 30 oktober 2019 @ 18:34:
want er kunnen ook lekke scripts tussen zitten. 99.99% van de meuk die je zult vinden zal lek, nóg lekker of finaal lek zijn.
FTFY :Y) :>

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij