Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Webprogrammeren & scripting

ajax mail...

Anoniem
blackhawkdesign
8 antwoorden
  • Ik was dus aan een ajax mail script aan het werken zodat de pagina niet hoefde te herladen, maar het werkt van geen kanten.
    Hier is de code…

    [code:1:fac16ea867]
    // Ajax…
    var params = "name="+name+"&subject="+subject+"&email="+email+"&message="+message;

    var xmlhttp;
    if (window.XMLHttpRequest)
    {
    xmlhttp=new XMLHttpRequest();
    }
    else
    {
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.open("POST","mail/mail.php",true);

    xmlhttp.onreadystatechange=function()
    {
    if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("wrapper").innerHTML=xmlhttp.responseText;
    }
    else{alert("error!")}
    }
    xmlhttp.send(params);[/code:1:fac16ea867]

    en de php code:
    (dit is gewoon een test code, ik moet het nog vervangen door een mail script)

    [code:1:fac16ea867]
    <?php
    $to = '************************';
    // name
    $name = $_POST['name'];
    //email adress
    $email = $_POST['email'];
    // subject
    $subject = $_POST['subject'];
    $rmessage = $_POST['message'];
    echo "Name: ".$name;
    echo "Email: ".$email;
    echo "Subject: ".$subject;
    echo "message: ".$rmessage;
    ?>

    [/code:1:fac16ea867]
    Zou iemand me kunnen helpen?

    Groetjes,

    mike
  • Weet echt niemand iets??
  • Jawel hoor, maar we zijn er niet altijd ;)

    Wil je het ajax gedeelte echt graag zelf schrijven? Als je het niet veel uitmaakt dan kan je ook de ajax functie van jquery gebruiken.

    Wat lukt er niet, krijg je javascript fouten of doet je php ding het niet.

    Ik heb hier niet de tools (en om eerlijk te zijn ook niet echt de zin) om je code te gaan debuggen. Wel kan je natuurlijk wat tips geven hoe je dit moet aanpakken.

    - Begin met het debuggen van je php code. Dit doe je simpel door hem aan te roepen met de juiste parameters. Dit doet namelijk je ajax (javascript) ook en het resultaat wat je toont op de pagina kan hij dan teruggeven.
    - Als je php code werkt, ga je de javascript debuggen. Hiervoor heb je een hele mooie addon voor firefox voor : https://addons.mozilla.org/en-us/firefox/addon/firebug/ Daarmee kan je je code debuggen.

    Als ik zo naar je code kijk zie ik dat er wat fout gaat:
    - In je php code probeer je alleen de ingevoerde gegevens te tonen, maar je mailt niets. Je kan dan beter de parameters verzamelen en een mail functie aanroepen. Vervolgens echo/print je dan ok als dat lukt.
    - Ook werk je met een post methode. Ik denk dat het in het begin makkelijkers is om met de get methode te werken. Zo kan je dus ook je php bestandje los debuggen door de juiste parameters in de url te zetten. Later kan je er dan altijd nog post van maken.

    Kan je hier wat mee? Als je ergens verduidelijk over wilt, dan hoor ik het graag.

    p.s.L Haal even je e-mailadres uit je berichtje, anders krijg je nog spam en dat soort dingen

    Succes!
  • Ik het hele script af…
    Je kan het testen op http://mikesmikkel.webuda.com/mail/.
  • Werkt het ook? Bij mij komt tot nu toe niks aan..
  • Het is ook niet de bedoeling dat het een mail naar jou stuurt.
    Je hebt naar mijn email-adres het volgende gestuurd:
    onderwerp: ..
    naam: hoi hoi
    (email laat ik weg omwille van spam, zoals je eerder in dit topic aanhaalde…)
    bericht: hoi

    Groetjes,
    Mike
  • aha zo, nou mooi :) dan werkt je eerste ajax formuliertje
  • bedankt voor de hulp!

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.