Redirect naar bedankingspagina werkt niet

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 volgende »

Frederic D

Frederic D

12/01/2017 19:59:16
Quote Anchor link
Beste,

Bij het correct invullen van het contactformulier zou ik de klant willen doorsturen naar een bedankingspagina. (zo kan ik ook een doel instellen via Google Analytics).
Dit lukt me voorlopig niet. Contactformulier waarmee ik werk stuurt nu een echo berichtje bij het al dan niet correct invullen. Het doorsturen naar een bedankingspagina lukt me niet, heb al geprobeerd met header('Location: http://www.mijnsite.be/bedankt.html'); zonder succes.

contact.php:
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
<?php
    if($_POST) {

        $to = "[email protected]"; // Your email here
        $subject = 'Bericht verstuurd van mijn site'; // Subject message here

    }

    //Send mail function
    function send_mail($to,$subject,$message,$headers){
        if(@mail($to,$subject,$message,$headers)){
            header('Location: http://www.mijnsite.be/bedankt.html');
            exit();
        }
else {
            echo json_encode(array('info' => 'error', 'msg' => "Uw bericht is niet verzonden. Er is iets verkeerd gegaan. Probeer het nog eens."));
        }
    }
    

    //Check e-mail validation
    function check_email($email){
        if(!preg_match("/^[_.\da-z-]+@[a-z\d][a-z\d-]+\.+[a-z]{2,6}$/i", $email)) {
            return false;
        }
else {
            return true;
        }
    }


    //Get post data
    if(isset($_POST['name']) and isset($_POST['mail']) and isset($_POST['onderwerp']) and isset($_POST['comment'])){
        $name      = $_POST['name'];
        $mail      = $_POST['mail'];
        $onderwerp      = $_POST['onderwerp'];
        $website  = $_POST['website'];
        $comment = $_POST['comment'];

        if($name == '') {
            echo json_encode(array('info' => 'error', 'msg' => "Gelieve uw naam in te vullen."));
            exit();
        }
else if($mail == '' or check_email($mail) == false){
            echo json_encode(array('info' => 'error', 'msg' => "Gelieve een geldig emailadres in te vullen."));
            exit();
        }
else if($onderwerp == ''){
            echo json_encode(array('info' => 'error', 'msg' => "Gelieve uw onderwerp in te vullen."));
            exit();
        }
else if($comment == ''){
            echo json_encode(array('info' => 'error', 'msg' => "Gelieve uw bericht in te vullen."));
            exit();
        }
else {

            //Send Mail
            $headers = 'From: ' . $mail .''. "\r\n".
            'Reply-To: '.$mail.'' . "\r\n" .
            'X-Mailer: PHP/' . phpversion();

            send_mail($to, $subject, $comment . "\r\n\n"  .'Naam: '.$name. "\r\n" .'Onderwerp: '.$onderwerp. "\r\n" .'Email: '.$mail, $headers);
        }

    }
else {
        echo json_encode(array('info' => 'error', 'msg' => "Gelieve alle velden in te vullen."));
    }
  

 ?>



Html code contactform:
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
               <form id="contact-form" method="post" action="contact.php">
                <div class="row contact-row">
                  <div class="col-md-6 contact-name">
                    <input name="name" id="name" type="text" placeholder="Uw naam*" required>
                  </div>
                  <div class="col-md-6 contact-email">
                    <input name="mail" id="mail" type="email" placeholder="Uw emailadres*" required>
                  </div>
                </div>
                <input name="onderwerp" id="onderwerp" type="text" placeholder="Onderwerp*" required>
                <textarea name="comment" id="comment" placeholder="Uw bericht*" required></textarea>
                  <input type="submit" class="btn btn-lg btn-color btn-submit" value="Verstuur uw vraag" id="submit-message">
                  <div id="msg" class="message"></div>
                </form>


Bedankt alvast voor de hulp!
- Ariën -:
Gelieve in het vervolg bij code de [code][/code]-tags gebruiken.
Hier kan je meer lezen over de mogelijke opmaakcodes.
Alvast bedankt!
Gewijzigd op 12/01/2017 20:09:08 door - Ariën -
 
PHP hulp

PHP hulp

05/11/2024 22:17:29
 
- Ariën  -
Beheerder

- Ariën -

12/01/2017 20:08:35
Quote Anchor link
Met die location-header is niks mis. De vraag is eigenlijk wat er niet aan werkt?
Zet de errors eens aan als die nog niet aan staan, en voet het eens uit?

Het enige wat er fout kan zijn is dat er HTML of witruimte voor je PHP-code zou staan. Maar zonder foutmeldingen is het nu nog gissen.
 
- SanThe -

- SanThe -

12/01/2017 21:02:40
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
if(isset($_POST['name']) and isset($_POST['mail']) and isset($_POST['onderwerp']) and isset($_POST['comment'])){
?>

kan korter:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
if(isset($_POST['name'],$_POST['mail'],$_POST['onderwerp'],$_POST['comment'])){
?>

$_POST['website'] => ik zie geen name="website" in het formulier.

Mailheaders zijn niet correct => http://wiki.phpbeginners.nl/index.php?title=De_juiste_mailheaders
Gewijzigd op 12/01/2017 21:03:33 door - SanThe -
 
Frederic D

Frederic D

13/01/2017 09:21:45
Quote Anchor link
Hoe zet ik die errors aan? Ik vind via phpinfo.php de versie 7.0.13 en waar het ini bestand staat, usr/local/php70/lib/php.ini, maar waar kan ik dit precies terug vinden? Moet ik hiervoor naar controlpanel / hosting kijken? Ini bestand zit niet in mijn mapje waar mijn website staat. Ik heb ook de display errors in mijn php bestand ingevuld, maar geen reactie te zien.

Ik heb de code aangepast en opgefrist, maar nog altijd geen actie bij het invullen van het mailform, zelfs de foutmeldingen bij het niet volledig invullen krijg ik niet te 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
<?php
ini_set('display_errors', 'On');
ini_set('display_startup_errors', 'On');
error_reporting(E_ALL);
    if($_POST) {
        $to = "[email protected]"; // Your email here
        $subject = 'Bericht verstuurd van mijn site'; // Subject message here
    }
    //Send mail function
    function send_mail($to,$subject,$message,$headers){
        if(@mail($to,$subject,$message,$headers)){
            header('Location: http://www.mijnsite.be/bedankt.html');
                        exit();
        }
else {
            echo json_encode(array('info' => 'error', 'msg' => "Uw bericht is niet verzonden. Er is iets verkeerd gegaan. Probeer het nog eens."));
        }
    }

    //Check e-mail validation
    function check_email($email){
        if(!preg_match("/^[_.\da-z-]+@[a-z\d][a-z\d-]+\.+[a-z]{2,6}$/i", $email)) {
            return false;
        }
else {
            return true;
        }
    }

    //Get post data
    if(isset($_POST['name'],$_POST['mail'],$_POST['onderwerp'],$_POST['comment'])){
        $name      = $_POST['name'];
        $mail      = $_POST['mail'];
        $onderwerp      = $_POST['onderwerp'];
        $comment = $_POST['comment'];

        if($name == '') {
            echo json_encode(array('info' => 'error', 'msg' => "Gelieve uw naam in te vullen."));
            exit();
        }
else if($mail == '' or check_email($mail) == false){
            echo json_encode(array('info' => 'error', 'msg' => "Gelieve een geldig emailadres in te vullen."));
            exit();
        }
else if($onderwerp == ''){
            echo json_encode(array('info' => 'error', 'msg' => "Gelieve uw onderwerp in te vullen."));
            exit();
        }
else if($comment == ''){
            echo json_encode(array('info' => 'error', 'msg' => "Gelieve uw bericht in te vullen."));
            exit();
        }
else {
            //Send Mail
            $headers = 'From: <' . $mail . '>' . "\r\n";
            'Reply-To: ' . $name . ' <' .$mail. '>' . "\r\n";
            'X-Mailer: PHP/' . phpversion() . "\r\n";

            send_mail($to, $subject, $comment . "\r\n\n"  .'Naam: '.$name. "\r\n" .'Onderwerp: '.$onderwerp. "\r\n" .'Email: '.$mail, $headers);
        }
    }
else {
        echo json_encode(array('info' => 'error', 'msg' => "Gelieve alle velden in te vullen."));
    }

 ?>
 
- Ariën  -
Beheerder

- Ariën -

13/01/2017 11:22:36
Quote Anchor link
Frederic D op 13/01/2017 09:21:45:
Hoe zet ik die errors aan?

Met jouw ini_set's kan je dit voor jouw script aanzetten.
Quote:
Ik vind via phpinfo.php de versie 7.0.13 en waar het ini bestand staat, usr/local/php70/lib/php.ini, maar waar kan ik dit precies terug vinden? Moet ik hiervoor naar controlpanel / hosting kijken? Ini bestand zit niet in mijn mapje waar mijn website staat.

Die genoemde locatie is alleen bereikbaar als je beheerder over de server bent, daar staan de globale instellingen van PHP over de hele server voor PHP 7 ingesteld. Als je shared-hosting hebt of geen beheerdersrechten hebt, dan kan je met .htaccess ook je error-reporting aan en uit zetten. Soms moet dit met aparte ini-bestanden, maar dat wordt dan wel duidelijk gemaakt in phpinfo() waarin staat in welke directories van jouw onder de 'additional directories' voor ini-files. In het eerste grote blokje staat dat daar vermeld.
Quote:
Ik heb ook de display errors in mijn php bestand ingevuld, maar geen reactie te zien.

Roep het bestand wat alles verwerkt eens handmatig aan. Wat gebeurt er dan?
De vraag is eigenlijk of er echt wel een fout in de PHP-code zit die het uitvoeren verhindert. Als de opbouw okee is en er zit een fout in de structuur omdat er een variabele vergeten is, waarbij hij op een 'false' uitkomt, dan is dat iets wat je niet kan aanrekenen tot een fout die PHP zelf zal aangeven.
Gewijzigd op 13/01/2017 11:24:05 door - Ariën -
 
Ivo P

Ivo P

13/01/2017 11:32:55
Quote Anchor link
waarom echo't dit script zoveel json? Wordt het soms via Ajax aangeroepen?
 
Frederic D

Frederic D

13/01/2017 11:36:13
Quote Anchor link
Als ik het php bestand handmatig in de browser oproep, zie ik het volgende:
{"info":"error","msg":"Gelieve alle velden in te vullen."}
 
Ivo P

Ivo P

13/01/2017 11:36:27
Quote Anchor link
if(!preg_match("/^[_.\da-z-]+@[a-z\d][a-z\d-]+\.+[a-z]{2,6}$/i", $email))

PHP heeft zelf functies (filter_var, filter_input) om te controleren of het een emailadres lijkt.

Deze regel accepteert bijvoorbeeld [email protected]
Wat me geevn valide adres lijkt

Terwijl [email protected] niet geaccepteerd wordt, noch [email protected]
om maar te zwijgen over [email protected] of andere "nieuwe" domein-extensies

Toevoeging op 13/01/2017 11:38:42:

{"info":"error","msg":"Gelieve alle velden in te vullen."}

dan post je dus kennelijk niet alle velden?

Als ajax: je wilt niet de aanroeper van het huidige script (een javascript ajax proces) door verwijzen naar bedankt.html, maar de pagina waarin je de ajax call doet.
 
Frederic D

Frederic D

13/01/2017 11:44:32
Quote Anchor link
Ik heb eens alle files in js map doorlopen en vond dit terug. Wordt dus via Ajax aangeroepen. Wat dien ik te wijzigen zodat de foutmeldingen wel tevoorschijn komen na het invullen van het contactformulier, en bij correct invullen men doorverwezen wordt naar bedankingspagina. Het is ook zo dat er meerdere contactforms zijn op de site, en meerdere bedankingspagina's.

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
var submitContact = $('#submit-message'),
        message = $('#msg');

    submitContact.on('click', function(e){
        e.preventDefault();

        var $this = $(this);
        
        $.ajax({
            type: "POST",
            url: 'contact.php',
            dataType: 'json',
            cache: false,
            data: $('#contact-form').serialize(),
            success: function(data) {

                if(data.info !== 'error'){
                    $this.parents('form').find('input[type=text],input[type=email],textarea,select').filter(':visible').val('');
                    message.hide().removeClass('success').removeClass('error').addClass('success').html(data.msg).fadeIn('slow').delay(5000).fadeOut('slow');
                } else {
                    message.hide().removeClass('success').removeClass('error').addClass('error').html(data.msg).fadeIn('slow').delay(5000).fadeOut('slow');
                }
            }
        });
    });

})(jQuery);
 
- Ariën  -
Beheerder

- Ariën -

13/01/2017 11:52:16
Quote Anchor link
Ik zou voor de proef eens dit tijdelijk neerzetten onderaan die foutmelding in je PHP-file:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
echo "<pre>".print_r($_POST,1)."</pre>";
?>

Dan zie je meteen wat er allemaal verstuurd wordt.

Ik zou het dan eerst zonder je jQuery proberen, zodat direct ziet wat je formulier verstuurt.
Gewijzigd op 13/01/2017 11:53:38 door - Ariën -
 
Ivo P

Ivo P

13/01/2017 12:04:11
Quote Anchor link
gebruik Firebug om te zien wat er verstuurd wordt dor de ajaxcall en wat de response was.

De redirect zou ik plaatsen in het jquery script op de regel na 19


window.location('bedankt.html');
 
Frederic D

Frederic D

13/01/2017 13:01:08
Quote Anchor link
We zijn al een stuk verder. :)
De berichten (foutmeldingen) zijn terug te zien, en ik krijg mailtjes met de ingevulde content. Alles werkt dus goed. Mijn fout was de verkeerde locatie van url: 'contact.php', in het js bestand.

Het enigste wat nog altijd niet lukt is de redirect naar een bedankingspagina.
Die window.location('bedankt.html'); onder regel 19 werkt niet.

Ivm email validation: moet ik alles van regel 18 tot 25 verwijderen?
 
- Ariën  -
Beheerder

- Ariën -

13/01/2017 13:07:29
Quote Anchor link
Ik zou lijn 19 aanpassen naar die genoemde window.location. Je hoeft immers je DOM-structuur niet aan te passen met de juiste classes.

Verder raad ik aan om regel 18 t/m 25 te verwijderen, en aan te passen naar:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
function check_email($email){
    if (filter_var($email, FILTER_VALIDATE_EMAIL)) {
          return true;
    } else {
          return false;
    }
}

Dan zullen mailadressen zoals [email protected] ook werken.
Gewijzigd op 13/01/2017 15:20:05 door - Ariën -
 
Thomas van den Heuvel

Thomas van den Heuvel

13/01/2017 15:12:35
Quote Anchor link
- Ariën - op 13/01/2017 13:07:29:
Verder raad ik aan om regel 18 t/m 25 te verwijderen, en aan te passen naar:
<knip>


Of gewoon
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
function check_email($email) {
    return filter_var($email, FILTER_VALIDATE_EMAIL) !== false;
}


Want
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
if (true) {
    return true;
} else {
    return false;
}

(en vice versa) is nogal dubbelop.

En een ! aan het begin van een moeilijke/lange expressie kan over het hoofd worden gezien dus als je deze kunt vermijden is dat een pre.
Gewijzigd op 13/01/2017 15:14:30 door Thomas van den Heuvel
 
- Ariën  -
Beheerder

- Ariën -

13/01/2017 15:19:25
Quote Anchor link
Kan ook.
Ik houd alles leesbaar voor hulp. Beter meerdere regels dan een enkele regel die ze niet direct snappen of verkeerd schrijven of intepreteren. Die ! was ook niet nodig.
Gewijzigd op 13/01/2017 15:21:15 door - Ariën -
 
Frederic D

Frederic D

13/01/2017 15:43:57
Quote Anchor link
De emailvalidatie werkt! Super.
Heb nu al tiental pogingen ondernomen met verschillende opties voor de doorverwijzing naar de bedanktpagina. Lukt nog altijd niet.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
if(data.info !== 'error'){
                    $this.parents('form').find('input[type=text],input[type=email],textarea,select').filter(':visible').val('');    message.hide().removeClass('success').removeClass('error').addClass('success').html(data.msg).fadeIn('slow').delay(5000).fadeOut('slow').window.location('bedankt.html');
                } else {
  message.hide().removeClass('success').removeClass('error').addClass('error').html(data.msg).fadeIn('slow').delay(5000).fadeOut('slow');


of

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
if(data.info !== 'error'){
                    $this.parents('form').find('input[type=text],input[type=email],textarea,select').filter(':visible').val('');    message.hide().removeClass('success').removeClass('error').addClass('success').html(data.msg).fadeIn('slow').delay(5000).fadeOut('slow');
window.location('bedankt.html');
                } else {
  message.hide().removeClass('success').removeClass('error').addClass('error').html(data.msg).fadeIn('slow').delay(5000).fadeOut('slow');


en in de PHP

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
//Send mail function
    function send_mail($to,$subject,$message,$headers){
        if(@mail($to,$subject,$message,$headers)){
            echo json_encode(array('info' => 'success', 'msg' => "Uw bericht is verzonden, bedankt! We nemen zo spoedig mogelijk contact met u op."));
        }
else {
            echo json_encode(array('info' => 'error', 'msg' => "Uw bericht is niet verzonden. Er is iets verkeerd gegaan. Probeer het nog eens."));
        }
    }

?>
 
- Ariën  -
Beheerder

- Ariën -

13/01/2017 15:52:57
Quote Anchor link
Dit zou moeten werken.
Kan anders eens wat data.info in een alert toont.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
if(data.info !== 'error'){
    window.location('bedankt.html');
} else {
message.hide().removeClass('success').removeClass('error').addClass('error').html(data.msg).fadeIn('slow').delay(5000).fadeOut('slow');
}
 
Thomas van den Heuvel

Thomas van den Heuvel

13/01/2017 16:05:01
Quote Anchor link
@Frederic: volgens mij redirect je de URL van de AJAX-call :).

Als je een form afhandelt via (een) AJAX(-callback) dan zou JavaScript moeten redirecten, niet PHP :).

De AJAX POST verwacht een JSON respons. Als je mail slaagt redirect je naar een andere pagina. Da's geen AJAX respons. De mail zal wel verzonden zijn, maar je redirect-constructie werkt niet.

Daarnaast probeer je dingen uit de brievenbus te halen die er mogelijk helemaal niet zijn. Controleer eerst of er gePOST wordt (if ($_SERVER['REQUEST_METHOD' == 'POST') { ... }), en probeer dan pas de POST variabelen te inspecteren. Een andere volgorde heeft geen zin.

Ook hoort het versturen van mail en een terugkoppeling via JSON niet echt thuis in dezelfde functie. Je zou een wrapperfunctie kunnen schrijven voor het versturen van de mail, en de return-value van deze functie kunnen laten bepalen wat er moet gebeuren, maar rol dat niet in dezelfde functie. Scheid de taken/verantwoordelijkheden.
 
Frederic D

Frederic D

13/01/2017 17:19:57
Quote Anchor link
Ik ken wel wat van html, maar nu gaat het toch even mijn petje te boven, ben niet meer mee. :)
Is een combinatie van foutmeldingen (JSON Uw bericht is niet verzonden / Gelieve een geldig mailadres in te vullen / ...) niet mogelijk met een redirect na het invullen van een contactformulier?

Moet deze regel bovenaan in mijn php file komen? (if ($_SERVER['REQUEST_METHOD' == 'POST') { ... })
Of dien ik die $.ajax code te verwijderen? Deze constructie is misschien ingewikkeld, maar aangekocht via een template. Het werkt perfect voor die foutmeldingen. Enkel bij het redirecten vind ik geen oplossing.
 
Frederic D

Frederic D

16/01/2017 17:09:05
Quote Anchor link
Ik zit nu zover dat ik na het invullen en versturen van het contactformulier op de contact.php pagina terecht kom. Dit is een witte pagina met enkel de succes message: {“info”:”success”,”msg”:”Uw bericht is verzonden, bedankt! We nemen zo spoedig mogelijk contact met u op.”}. Maar er is dus nog altijd geen FW naar de bedankt pagina. Wat zou er nog mis kunnen zijn in de code??

Dit is de scripts.js file:
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
var submitContact = $('#submit-message'),

        message = $('#msg');

    submitContact.on('click', function(e){

        e.preventDefault();

        var $this = $(this);

        $.ajax({

            type: "POST",

            url: 'contact.php',

            dataType: 'json',

            cache: false,

            data: $('#contact-form').serialize(),

            success: function(data) {

        window.location.href = 'http://www.mijnsite.be/bedankt.html';

        if(data.info !== 'error'){

          $this.parents('form').find('input[type=text],input[type=email],textarea,select').filter(':visible').val('');

          message.hide().removeClass('success').removeClass('error').addClass('success').html(data.msg).fadeIn('slow').delay(5000).fadeOut('slow');

        } else {

          message.hide().removeClass('success').removeClass('error').addClass('error').html(data.msg).fadeIn('slow').delay(5000).fadeOut('slow');

        }

      }

            }

        });

    });

})(jQuery);


Dit is de contact.php:
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
<?php

    if($_POST) {

        $to = "[email protected]"; // Your email here

        $subject = 'Bericht verstuurd van mijn website xxx'; // Subject message here

    }

    //Send mail function

    function send_mail($to,$subject,$message,$headers){

        if(@mail($to,$subject,$message,$headers)){

            echo json_encode(array('info' => 'success', 'msg' => "Uw bericht is verzonden, bedankt! We nemen zo spoedig mogelijk contact met u op."));

        }
else {

            echo json_encode(array('info' => 'error', 'msg' => "Uw bericht is niet verzonden. Er is iets verkeerd gegaan. Probeer het nog eens."));

        }

    }


    //Check e-mail validation

    function check_email($email) {

    return filter_var($email, FILTER_VALIDATE_EMAIL) !== false;

}


    //Get post data

    if(isset($_POST['name'],$_POST['mail'],$_POST['onderwerp'],$_POST['comment'])){

        $name      = $_POST['name'];

        $mail      = $_POST['mail'];

        $onderwerp      = $_POST['onderwerp'];

        $comment = $_POST['comment'];

        if($name == '') {

            echo json_encode(array('info' => 'error', 'msg' => "Gelieve uw naam in te vullen."));

            exit();

        }
else if($mail == '' or check_email($mail) == false){

            echo json_encode(array('info' => 'error', 'msg' => "Gelieve een geldig emailadres in te vullen."));

            exit();

        }
else if($onderwerp == ''){

            echo json_encode(array('info' => 'error', 'msg' => "Gelieve uw onderwerp in te vullen."));

            exit();

        }
else if($comment == ''){

            echo json_encode(array('info' => 'error', 'msg' => "Gelieve uw bericht in te vullen."));

            exit();

        }
else {

            //Send Mail

            $headers = 'From: <' . $mail . '>' . "\r\n";

            'Reply-To: ' . $name . ' <' .$mail. '>' . "\r\n";

            'X-Mailer: PHP/' . phpversion() . "\r\n";

            send_mail($to, $subject, $comment . "\r\n\n"  .'Naam: '.$name. "\r\n" .'Onderwerp: '.$onderwerp. "\r\n" .'Email: '.$mail, $headers);

        }

    }
else {

        echo json_encode(array('info' => 'error', 'msg' => "Gelieve alle velden in te vullen."));

    }


 ?>
Gewijzigd op 16/01/2017 17:10:05 door Frederic D
 
- Ariën  -
Beheerder

- Ariën -

16/01/2017 17:14:06
Quote Anchor link
Ik gebruik dit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
window.location = 'blaat.php';


Dus ik zou dan dit gebruiken:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
if(data.info !== 'error'){
   window.location = 'http://www.mijnsite.be/bedankt.html';
        } else{
message.hide().removeClass('success').removeClass('error').addClass('error').html(data.msg).fadeIn('slow').delay(5000).fadeOut('slow');

        }
 

Pagina: 1 2 volgende »



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.