2010-06-03 8 views
1

J'ai un formulaire qui doit exécuter un script php une fois que le bouton Soumettre est cliqué, il doit être ajax.besoin d'exécuter le script PHP lorsque le formulaire est soumis

<form method="post" action="index.php" id="entryform" name="entryform"> 
<input type="submit" name="submit" value="Submit" onclick="JavaScript:xmlhttpPost('/web/ee_web/include/email-notification.php', 'entryform')" /> 
</form> 

Dans cette situation, en utilisant si (formulaire affiché) {obtenir des résultats et exécuter le script} est pas une option, je dois exécuter le script externe, c'est la raison pour laquelle je en ai besoin pour exécuter l'e-mail de notification. php at onclick

Lorsque je pointe mon navigateur web vers domain.com/include/email-notification.php - il fonctionne parfaitement.

Toute aide est appréciée.

Cela exécute le script avant de soumettre le formulaire, maintenant je dois attendre pour exécuter le script une fois que le bouton de soumission est cliqué, possible de le faire?

$.ajax({ 
    type: "POST", 
    url: "/include/email-notification.php", 
    dataType: "script" 
}); 
+0

Je suppose que vous devez pointer vers /include/email-notification.php sous la forme aussi bien alors? – baloo

+0

Oui, je me demandais la même chose aussi. Brad, est-ce que la partie '/ web/ee_web' est censée être là? – KyleFarris

+0

/web/ee_web/est le chemin absolu – Brad

Répondre

0

Essayez de changer la valeur "onclick":

<input type="submit" name="submit" value="Submit" onclick="JavaScript:xmlhttpPost('/web/ee_web/include/email-notification.php', 'entryform'); return false" /> 

C'est en supposant que le "xmlhttpPost()" est quelque chose qui fonctionne en fait sur lui-même.

1

Je suggère d'utiliser jquery. en raison de sa flexibilité et conveinience

Si vous souhaitez envoyer une notification par e-mail, puis postez que les données puis procédez comme suit:

créer une page séparée pour gérer votre notification par courrier électronique comme email.php

// fill in headers and prepare content 
$result = mail(............................); 
if($result) { return 1; } else { return 0; } 

ensuite, sur votre formulaire

$('#mysubmitbutton').click(function() { 
     $.post(
      'email.php', 
      { emailadd: '[email protected]', content: 'mycontent' }, //send parameters to email.php 
      function(data) { 
       //now check whether mail sending was successfull 
       if(data==1) { 
        //message sending was successful so carry out further operation 
        //................................. 
       } 
       else { alert("Sorry, email notification was unsuccessfull"); } 
      }); 
}); 
Questions connexes