PHP vraag email functie

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Superky rickoz

superky rickoz

08/06/2013 18:23:05
Quote Anchor link
Hoi,

Een vraagje ik wil graag een contactformulier maken, wat me ook gelukt is. Maar als iemand me een bericht stuurt via mijn contactformulier dan krijg ik wel zijn bericht te zien in mijn mailbox. Maar als ik een reply wil doen dan lukt dat niet. Omdat ik zijn e-mailadres niet zie. In plaats daarvan krijg ik het volgende te zien:
Afbeelding

Ook heb ik geprobeerd om een reply te doen, maar als ik naar de inbox ga van Ogenpi dan zie ik geen bericht van Rekenkanjer. Dit komt waarschijnlijk omdat ik in eerste instantie al zijn e-mailadres niet kon lezen. Kan iemand me vertellen hoe ik dit kan oplossen?

Hier is de code, en vanaf regel 41 kunt u mijn mail functie zien:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
<?php
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

require 'connect.inc.php';
require 'core.inc.php';
if (isset($_POST['contact_name']) && isset($_GET['contact_email']) && isset($_POST['contact_text'])) {
    $contact_name = $_POST['contact_name'];
    $contact_email = $_POST['contact_email'];
    $contact_text = $_POST['contact_text'];

    if (empty($contact_name) && empty($contact_email) && empty($contact_text)) {
        echo'Je naam, e-mailadres en bericht is nodig';
    }


    if (!empty($contact_name) && !empty($contact_email) && !empty($contact_text)) {
        if (strlen($contact_name) > 25 || strlen($contact_email) > 50 || strlen($contact_text) > 1000) {
            echo 'Sorry de maximale invoer is overschreden';
        }


        if (filter_var($contact_email, FILTER_VALIDATE_EMAIL) === false) {
            echo 'Dat is geen geldig e-mailadres';
        }

        if (ctype_alpha($contact_name) === false) {
            echo'Je naam moet alleen uit letters bestaan';
        }


        $contact_name = strip_tags($contact_name);
        $contact_name = stripslashes($contact_name);
        $contact_email = strip_tags($contact_email);
        $contact_email = stripslashes($contact_email);
        $contact_text = strip_tags($contact_text);
        $contact_text = stripslashes($contact_text);

        $to = '[email protected]';
        $subject = 'Contact form submitted.';
        $body = $contact_name . "\n" . $contact_text;
        $headers = 'Form: ' . $contact_email;

        if (@mail($to, $subject, $body, $headers)) {
            echo'Bedankt voor het verzenden van je bericht. We houden je spoedig op de hoogte';
            //header('Location: member.php');
           // exit();

        } else {
            echo'Sorry, een storing was aanwezig. Probeer het nog een keer';
        }
    }
}
else {
    echo 'All fields are required';
}

?>


<html lang="en">
    <head>
        <meta charset="utf-8"/>
        <title>Rekenkanjer</title>
        <link rel="stylesheet" href="css/main.css">
    </head>
    <body>
        <?php
        //if (isset($_GET['sent']) == true) {
        //    echo '<p> Bedankt voor het versturen van je bericht.';
        //}
        //  else

        ?>

        <div id="big_wrapper">
            <header id="top_header">
            </header>

            <nav id="top_menu">
                <ul>
                    <li><a href="index.php">Home</a></li>
                    <li><a href="contactformulier.php">Contact</a></li>
                </ul>
            </nav>

            <div id="new_div">
                <section id="main_section1">
                    <h4>Contactformulier</h4>
                    Rekenkanjer biedt de mogelijkheid om je vraag via onderstaand formulier te stellen.
                    Je ontvangt zo spoedig mogelijk een antwoord van ons op het door jouw opgegeven e-mailadres.<br>

                    <form action="contactformulier.php" method="POST">
                        Name: <br> <input type="text" name="contact_name" maxlength="25"> <br><br>
                        Email adress:<br> <input type="text" name="contact_email" maxlength="50"><br><br>
                        Message: <br>
                        <textarea name="contact_text" rows="6" cols="30" maxlength="1000"></textarea>
                        <input type="submit" value="Send">
                    </form>

                </section>

                <aside id="side_score">
                    <h4>Inloggen:</h4>
                    <?php
                    if (loggedInUser()) {
                        header("Location: member.php");
                    }
else {
                        include 'loginform.inc.php';
                    }

                    ?>

                </aside>
            </div>

            <footer id="the_footer">
                Copyright Rekenkanjer KTV305 GetConnected 2013
            </footer>

        </div>
    </body>
</html>


Graag hoor ik van u een reactie. Alvast bedankt voor uw antwoord.

Mvg,

superky
 
PHP hulp

PHP hulp

24/11/2024 23:49:19
 
- Ariën  -
Beheerder

- Ariën -

08/06/2013 18:43:23
Quote Anchor link
Lijn 39 is fout, er staat 'Form:' i.p.v. From:
 
St p

st p

09/06/2013 00:28:57
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7

<?php
if (@mail($to, $subject, $body, $headers)) {
            echo'Bedankt voor het verzenden van je bericht. We houden je spoedig op de hoogte';
            //header('Location: member.php');
           // exit();

?>

je hebt een @ ervoor staan is dit niet een fout onderdrukken?
Haal de @ weg en kijk wat er gebeurt.
Haal voor de header de // weg ,want // wordt gebruikt voor commentaar toe te voegen en php ziet dit niet als een header en slaat het over.
exit wordt niet gedaan want er staan // voor dus zonder // ervoor dan sluit php mail af.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13

<?php
ini_set('display_errors', 'On');
error_reporting(E_ALL);

//@ weg laten kijken wat er gebeurd
 if (mail($to, $subject, $body, $headers)) {
            echo'Bedankt voor het verzenden van je bericht. We houden je spoedig op de hoogte';
           //
           header('Location: member.php');
           //nu sluit je deze functie af
           exit();
?>

hier onder zie je wat ik zag toen ik de code ging plakken in mijn php debug programma.
Afbeelding
Gewijzigd op 09/06/2013 00:38:33 door st p
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

09/06/2013 07:11:53
Quote Anchor link
En let op dat je niet zomaar een willekeurig email adres kan opgeven in de From headers, een goed opgezette mailserver zal het bericht niet versturen.
 
St p

st p

09/06/2013 09:26:23
Quote Anchor link
hier heb je teveel van // staan haal het weg en je script werkt weer.je script loopt vast op dit stukje code.
hieronder.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
        //if (isset($_GET['sent']) == true) {
        //    echo '<p> Bedankt voor het versturen van je bericht.';
        //}
        //  else

        ?>


als je de // weg haalt dan krijg je zo iets als hier onder.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
        if (isset($_GET['sent']) == true) {
           echo '<p> Bedankt voor het versturen van je bericht.';
        }

// hier moet nog een ander functie bij geschreven worden want else en dan geen functie dan  weet het script nietwat het moet doen. dus zet er een functie bij else en sluit de if classe goed af          
else
        ?>
Gewijzigd op 09/06/2013 09:30:38 door st p
 
Superky rickoz

superky rickoz

09/06/2013 19:37:59
Quote Anchor link
- Aar - op 08/06/2013 18:43:23:
Lijn 39 is fout, er staat 'Form:' i.p.v. From:


Bedankt het werkt weer! En de rest ook bedankt hoor :) Ik zal de overige fouten ook verbeteren dan :)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.