簡體   English   中英

在php中提交表單后如何顯示錯誤消息?

[英]How can I display the error message after submitting the form in php?

我有一個網頁,在選擇后顯示內容,它包含一個帶有提交按鈕的表單。 單擊提交按鈕后,我想在上一頁中顯示錯誤消息。 這是代碼:

    //form is sending email through action:"email.php". Code in php file:   
    mail ($to, $subject, $mess);

    //set the error session...(I left out the form validation code to simplify)
    $_SESSION["Login.Error"] = "Invalid credentials";

    //go back to previous page with all previous selections
    $previousPage = $_SERVER['HTTP_REFERER'];
    header("Location: $previousPage");

在表單中,我添加了以下代碼以顯示錯誤消息:

<p class="form-text text-muted">Error Message: 
   <?php if(isset($_SESSION['Login.Error']))  {
   echo $_SESSION['Login.Error'];
   unset($_SESSION['Login.Error']); }
   ?> 
</p>

按下提交后,上一頁正在加載OK,但錯誤信息沒有顯示,所以$ _SESSION我猜錯了。 或者這與$ _SERVER ['HTTP_REFERER']有關嗎? 有人可以幫忙嗎?

你可以使用session_start();

   session_start();

   mail ($to, $subject, $mess);

  //set the error session...(I left out the form validation code to simplify)
  $_SESSION["Login.Error"] = "Invalid credentials";

  //go back to previous page with all previous selections
  $previousPage = $_SERVER['HTTP_REFERER'];
  header("Location: $previousPage")

/ * referer page * /

   <?php session_start();?>

  <p class="form-text text-muted">Error Message: 
         <?php if(isset($_SESSION['Login.Error']))  {
          echo $_SESSION['Login.Error'];
          unset($_SESSION['Login.Error']); }
  ?> 
  </p>

您需要按照以下代碼啟動會話。

<?php 
    session_start();
    mail ($to, $subject, $mess);

    $_SESSION["Login.Error"] = "Invalid credentials";
    $previousPage = $_SERVER['HTTP_REFERER'];
    header("Location: $previousPage");
?>

在表單中,我添加了以下代碼以顯示錯誤消息:

<p class="form-text text-muted">Error Message: 
   <?php 
   session_start();
   if(isset($_SESSION['Login.Error']))  {
       echo $_SESSION['Login.Error'];
       unset($_SESSION['Login.Error']);
   }
   ?> 
</p>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM