Передача данных POST через форму на той же странице - PullRequest
1 голос
/ 15 декабря 2011

У меня довольно сложная ситуация. Прямо сейчас у меня есть форма на странице, которая запрашивает информацию моего посетителя. У меня есть скрипт, который позволяет мне брать информацию о посетителях и добавлять ее в ссылку.

Сначала у меня был redirect.php, который позволял мне добавлять всю информацию к ссылке и использовал заголовок для отправки пользователя на его страницу.

Однако мне было интересно, можно ли отправить данные этой формы на ту же страницу и одновременно отобразить страницу пользователей.

Надеюсь, у меня есть смысл. Большое спасибо.

Ответы [ 3 ]

5 голосов
/ 15 декабря 2011

это, если вы понимаете, что ваш вопрос может быть решен разными способами, например, с использованием наполнителей на основе функций.Один из способов - проверить, была ли форма отправлена ​​с использованием $_POST или путем проверки скрытого поля $ _POST ['_ submit'].это выглядит неопрятно, но показывает простой способ.

 <?php
  if (!isset($_POST['_submit'])) {
 ?> 

 <form action="post.php" method="post">
  <input type="submit" />
  <input name="somevalue" type="text" />
  <input name="_submit" type="hidden" value="_submit" />
</form>

<?php
 } else {
  echo htmlspecialchars($_POST['somevalue']);
 ?>

 <em></em>

 <?php } ? >

Есть и другие вещи, которые вам еще нужно сделать, чтобы подготовить этот код, например uisng isset, для полей, которые вы проверяете, иначе у вас будет потерязамечает, если люди вмешиваются в форму

1 голос
/ 16 декабря 2011

Просто оставьте пустую часть действия

<form method="post" action="">
    <input name ="MyCustomInput" type="text" />
</form>

для вызова входных данных на странице:

0 голосов
/ 15 декабря 2011

уверен. Вы можете использовать XMLHttpRequest и упростить его, используя что-то вроде mootools или jquery.

Я приведу пример отправки формы с помощью mootools. учитывая, что ваша форма имеет идентификатор myForm

 document.addEvent('domready', function() {
     $('myForm').addEvent('submit', function(ev) {
    ev.stop();
    $('myForm').set('send', {
        onRequest: function(){
        },
        OnSuccess: function(response) {
              // do stuff with the response data
        }
            });
    $('myForm').send();
     });
 });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...