2012-05-21 3 views
0

У меня есть очень простой вопрос о PHP. Итак, есть index.php, который включает в себя форму. Эта форма содержит поле ввода field1:PHP: чтение значения поля ввода

index.php

<div id="container1"> 
    <form name="optform" method="post" action="processing.php"> 
       <div class = "box"> 
        <label for="field1"><span>Bla bla bla:</span></label> 
        <input type="text" class="input-text" value="5" size="11" maxlength="11" name="field1" id="field1"> 
       </div> 
       <br/> 
      <div class="buttons"> 
       <a href="" class="regular" onclick="click_function();return false;">Run</a> 
      </div> 
    </form> 
    </div> 

    <div id="container2"> 

    </div> 

    <script language="javascript"> 
    function click_function() { 
     $('#container2').load('processing.php'); 
    } 
    </script> 

мне нужно использовать значение из field1 в другой PHP файл с именем, как processing.php. Итак, как я могу прочитать это значение от processing.php? Должен ли я сделать что-то вроде этого в processing.php:?

processing.php

$field1value = $_POST["field1"]; 
+0

Включите process.php в index.php и выполните код при условии, что установлен POST. Это один из вариантов. Вы также можете установить действие формы на process.php, а затем перенаправить обратно в индекс. – cen

ответ

6

Атрибут действия указывает URL, что браузер будет подчиняться. Это в настоящее время index.php.

Если вы хотите использовать код в processing.php для обработки данных формы, то индекс должен включать обработку, а не наоборот. (Поскольку код стоит, processing.php вообще не будет задействован, поэтому не может включать ничего).

В качестве альтернативы измените действие, чтобы указать на processing.php.

+0

, используя одну общую точку входа для приложения, как правило, лучше, я бы проголосовал за 'index.php' –

+0

Да. Согласен. Передний контроллер ... :) голосуйте вверх .. – verisimilitude

+0

Пожалуйста, посмотрите мой обновленный код. Правильно ли сейчас? –

2

Вы должны POST форму для processing.php

<form name="optform" method="post" action="processing.php"> 
+0

Пожалуйста, посмотрите мой обновленный код. Правильно ли сейчас? –

0

В зависимости от того, как вы хотите сделать это вы можете хранить его в $_SESSION
вы можете поместить в action атрибута «processing.php», который будет отправьте все значения POST в этот файл.
Вы также можете include processing.php с index.php

0

Поскольку действие вашего устанавливается в index.php, данные я чувствую будет вывешен на index.php себя. Вместо этого, почему бы не включить action = "processing.php"?