簡體   English   中英

如何在沒有 forms 的情況下使用 POST 將變量從 PHP 腳本發送到另一個腳本?

[英]How to send variables from a PHP script to another script using POST without forms?

我正在嘗試編寫我的第一個 PHP 腳本(希望如此)。 我想將用戶輸入從 HTML 頁面內的表單發送到 PHP 腳本並在腳本內驗證它們。 然后,如果輸入數據有任何問題,請返回第一頁並突出顯示錯誤的字段。 否則 go 到另一個頁面(類似於成功)。

如何在不使用 forms 的情況下將第二個腳本的反饋發送到第一頁?

簡而言之,你會有這樣的事情:

<?php

if ($_SERVER['REQUEST_METHOD'] == 'POST') {
   $errors = array();

   $name = $_POST['name'];
   if ($name !== 'Fred') {
      $errors[] = 'Please enter "Fred"';
   }

   ... validate more fields ...

   if (count($errors) == 0) {
     ... form is ok ...
     header('Location: everything_is_ok.php');
     exit();
   }
}

?>

<form action="<?php echo $_SERVER['SCRIPT_NAME'] ?>" method="POST">
Enter 'Fred': <input type="text" name="name" value="<?php echo htmlspecialchars($name) ?>" /><br />
<input type="submit" />
</form>

基本上:讓表單頁面提交回自身。 如果一切正常,將用戶重定向到另一個頁面。 否則重新顯示表格。

例如,重新加載第一頁並在 session 中發送反饋。 如果 session['errors'] 存在,則回顯它們。 請注意,無論如何,您都必須在 html 頁面中包含一些 php 標簽。

只需將您的表單發布到自己,然后在您的 PHP 檢查值,如果它們有效,請不要顯示您的表單並執行您的提交代碼。 如果它們無效,則顯示帶有值和錯誤的表單。

使用 session... 這是一個幫助您入門的鏈接: http://www.tizag.com/phpT/phpsessions.php

暫無
暫無

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

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