Показывать форму только если есть PHP - PullRequest
0 голосов
/ 16 января 2010

Я новичок в PHP. Iv создал небольшой скрипт php. В основном у меня есть форма и внутри нее есть функция с именем show_sent:

        <form method="post" action="contact.php" class="formstyle">
            <h2>Formulaire de contact : </h2>
            <p>&nbsp;</p>

    <?
function show_sent(){
    ?>
    <p>Sent</p>

            <?
} // the function finishes here
?>

.......

Я надеялся, что он покажет текст «Отправлено» только при вызове этой функции. Как я мог это сделать? Спасибо

contact.php - это та же страница, что и форма

Ответы [ 3 ]

4 голосов
/ 16 января 2010

Вам нужно немного почистить код. Прыгать в и из HTML и PHP не очень хорошая вещь.

<?php

  function show_sent() {
    print "<p>Sent</p>";
  }

  if ($_POST) {
    $errors = false;
    /* logic to check data */
    if (!$errors)
      show_sent();
  }

?>

  <form>
    <input type="text" name="fname" />
  </form>
0 голосов
/ 16 января 2010

Один из способов сделать это - отправить форму себе вместо другого файла, тогда вы можете проверить, есть ли в переменных данные и вызывают ли они вашу отправленную функцию.проверьте эту ссылку для получения дополнительной информации о посте себя.http://www.webmaster -talk.com / PHP-форум / 51903-PHP-я-представление-form.html

0 голосов
/ 16 января 2010

Вам необходимо проверить, опубликованы ли данные формы. Вы делаете это, идя:

if(isset($_POST['form_element_name']))
{
    //call the show_sent function because data has been posted
    show_sent();
}

или

function show_sent(){
    if(isset($_POST['form_element_name']))
    {

    }
}
//Call the show_sent function all the time because the code inside the function checks the POST variables.
show_sent();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...