2014-05-22 2 views
2

Я ищу, чтобы отправить файл формы HTML (home.html) с файлом действия PHP (action.php), чтобы отобразить вывод в том же файле home.html после обработки через action.php.Как получить выходное значение формы на той же странице формы HTML?

У меня есть много сценариев, решающих эту проблему с файлом .php, можно ли сделать то же самое с HTML?

home.html

<form action="action.php" method="post"> 
Enter Numeric Value: <input type="number" name="num"> 
<input type="Submit" value="Calculate"> 
</form> 

action.php

<?php 
    $a=$_POST["num"]; 
    echo "Contact our sales person for higher volume of Emails"; 
?> 
+2

* ", чтобы отобразить вывод в том же файле home.html" * - Вы не можете этого сделать, если только вы не укажете Apache для обработки файлов .html в качестве PHP. В противном случае вам нужно будет использовать iframe или переименуйте свой '.html' в' .php' –

ответ

1

Измените файл home в PHP файл и указать вид действия на него, то вы можете просто использовать POST/GET данные и отобразите его на странице:

Я добавил использование «htmlentities», чтобы он стал более безопасным.

home.php

<?php 

    if(isset($_POST['num'])) 
    { 
     echo htmlentities($_POST['num']); 
    } 

?> 

<form action="home.php" method="post"> 
Enter Numeric Value: <input type="number" name="num"> 
<input type="Submit" value="Calculate"> 
</form> 
+0

избили меня тоже :) –

+0

@Fluffeh: Я знаю то, что вы предложили, но мне было любопытно узнать, это возможно одно и то же, что мы можем сделать только с HTML. спасибо за ответ – Karan

+0

@ Fred -ii: спасибо. – Karan

1

Другой вариант, сначала загрузить файл HTML, а затем потяните его в PHP файл:

home.html:

<form action="action.php" method="post"> 
Enter Numeric Value: <input type="number" name="num" value="<?=$a?>"> 
<input type="Submit" value="Calculate"> 
</form> 

Обратите внимание на "значение" поле и введенный там php-код.

action.php:

<?php 
    $a=$_POST["num"]; 
    echo "Contact our sales person for higher volume of Emails"; 

    require 'home.html'; 
?> 

Просто require'ing файл home.html.

Сначала вы загружаете home.html в свой браузер, введите число, отправьте форму в файл action.php. Затем, когда action.php загружается, он отображает соответствующее сообщение, натягивает страницу home.html и загружает переменную $ a в поле формы. При загрузке в виде простого HTML-файла код PHP игнорируется браузером, но анализируется, когда файл action.php требует HTML-файл.

+1

Уверены ли вы в этом? Пересмотрите это и прочитайте некоторые комментарии по вопросу OP и другой ответ. –

+0

Это -1, это мое. Перечитайте мой комментарий выше. Особенно ['this comment'] (http://stackoverflow.com/questions/23808198/how-to-get-form-output-value-on-same-html-form-page#comment36623353_23808198) –

+0

@Fred -ii- Прохладный, комментарии перечитываются. Что, в частности, вы считаете проблемой с этим вариантом? Я использовал эту технику время от времени, и просто проверял ее, чтобы быть уверенным вдвойне. PHP требует, чтобы HTML-файлы просто отлично и даже анализировали PHP-код. – bloodyKnuckles

Смежные вопросы