Получение результата выполнения php скрипта без перезагрузки страницы

Подскажите как можно получить результат php скрипта без перезагрузки страницы?

Есть динамичная форма:

<form action="#" method="POST">
<input type="text" name="ORDER" id="ORDER">
<input type="text" name="AMOUNT" id="AMOUNT">
<textarea id="P_SIGN" name="P_SIGN"></textarea>

<button type="submit" name="my_button">Отправить</button>

Нужно в textarea вывести результат хеширования данных с input'ов

Вот к чему я пришел спустя месяца попыток:

    <?php 
if( isset( $_POST['my_button'] ) )
{
$sha512 = hash("sha512",

$_POST['ORDER'] .= ";"
.$_POST['AMOUNT'] .= ";"
);

echo $sha512;

}
?>

Все работает, только вот результат появляется после того как форма уходит.


Ответы (1 шт):

Автор решения: Alexander

Советую посмотреть в сторону ajax.

$( 'form' ).submit(function(e) {
    e.preventDefault();
    var ajax_form = $(this);
    $.ajax({
        url: url, //url страницы (action_ajax_form.php)
        type: "POST", //метод отправки
        dataType: "html", //формат данных
        data: ajax_form.serialize(),  
        success: function(response) { //Данные отправлены успешно
            $('#P_SIGN').val(response);
        },
        error: function(response) { // Данные не отправлены
            ajax_form.html('Ошибка. Данные не отправлены.');
        }
    });
});

PHP

<?php 
if( isset( $_POST['my_button'] ) && isset( $_POST['ORDER'] ) && isset( $_POST['AMOUNT'] ))
{
    $sha512 = hash("sha512", $_POST['ORDER'].';'.$_POST['AMOUNT'].';';   
    echo $sha512; 
}
?>
→ Ссылка