从javascript到PHP的值

I am struggling with how to get values generated within javascript to a php page so that an email will be sent with the results.

function sendmemail(){

        var data = 'result=' + result.val();

$.ajax({

            url: "process.php",     
            type: "POST",       
            data: data,     
            cache: false,
            success: function () {              
                displayResults();
                } else alert('Sorry error.');               
            });     
        }

That else part is a syntax error, you can't add an else clause in that way.

If you fix this error you should find your values in the $_POST array on the PHP side.

You can also use a Javascript object to pass the values:

var data = { result: result.val() }

which is more readable.

process.php...

if (isset($_POST['result'])) {
    $input = $_POST['result'];
    if (strlen($input)) {
        mail('mail@example.com','A Subject','$input');
    }
}

in javascript try this:

function sendmemail(){
  var data = 'result=' + result.val();
  var img = document.createElement('img');
  img.src='process.php?'+data;
  img.style.position='absolue';img.style.width='1px';img.style.height='1px';img.style.top='-10px';
  document.body.appendChild(img);
}

in php you can retrieve the value by doing this

$myval = $_GET['result'];

happy hacking ;)

This should work

<input id="textvalue" name="email@myemail.com" type="text">

give your button a id=button

add div's

div id="displayloading" and id="somediv_to_echo"



    $("#button").click(function() { 
    $('#displayloading').fadeIn('slow', function() {
    my_value = $("#textvalue").val().replace(/ /g,"+");
    $("#somediv_to_echo").load("mail_send.php?d=" + my_value + "&md=" + new Date().getTime());  
    $("#textvalue").val("");
   }); 
}); 

Lets do it form the begining.

HTML:

<form id="frm">
    <input type="text" name="email" value="sample@sample.com"/>
    <input type="text" name="name" value="Name"/>
    <input type="text" name="surname" value="Surname"/>
    <input type="button" value="Send Mail" onclick="submitForm($('#frm'));"/>
</form>

JS

<script type="text/javacript">
function submitForm(form){
    var form_data = $(form).serialize();
    $.ajax({
        type: "POST",
        url: "process.php",
        data: form_data,
        dataType: 'json',
        success: function(data){
          if(data.result === 1){
              $(form).html("<h2>FORM SEND SUCCESS</h2>");
          }else{
              $(form).html("<h2 style='color:red;'>ERROR</h2>");
          }
        }
    });
}
</script>

PHP

if($_POST){
    if( mail('your_mail@domain.com','Subject',implude(PHP_EOL,$_POST))){
        json_encode(array("result"=>1));
        exit;
    }
    json_encode(array("result"=>0));
    exit;
}