验证后重复的预填充文本区域-PHP

验证后重复的预填充文本区域-PHP,php,forms,Php,Forms,我有一条消息需要为textarea预填充。此消息可由用户编辑 如果存在表单验证错误,则每次出现错误时,都会显示重复的消息 <textarea name="comments" rows="20" style="width:99%;"><?=$fields['comments']?>TEXT HERE</textarea> 我不认为这是由于验证导致的错误,而是保存内容并将其添加到现有预填充消息的字段 是否有一种方法可以加载邮件并让用户在不重复的情况下对其进

我有一条消息需要为textarea预填充。此消息可由用户编辑

如果存在表单验证错误,则每次出现错误时,都会显示重复的消息

<textarea name="comments" rows="20" style="width:99%;"><?=$fields['comments']?>TEXT  
 HERE</textarea>
我不认为这是由于验证导致的错误,而是保存内容并将其添加到现有预填充消息的字段

是否有一种方法可以加载邮件并让用户在不重复的情况下对其进行编辑

我可以提供任何必要的代码。我目前正在使用此代码进行验证:


复制了什么?哪里何时?您可以发布validateFields$\u post,$rules方法的代码在表单错误发生后,textarea中的预填充文本会重复。您能解释一下每次错误发生时的含义吗?每次=如果您提交的表单出现错误,您会得到1份副本,您再试一次,您会得到2份副本,第三次您会得到4份副本?完全正确。每次我点击submit并出现错误时,内容都会重复。
<?php
session_start();

$_SESSION['name'] = $_POST['name'];
$_SESSION['senders_email'] = $_POST['senders_email'];
$_SESSION['address'] = $_POST['address'];
$_SESSION['city'] = $_POST['city'];
$_SESSION['state'] = $_POST['state'];
$_SESSION['comments'] = $_POST['comments'];

//e-mail message text
$body=<<<_MSG_
Hello,

$comments

Sincerely,

$name
$address
$city
$state
_MSG_;
$text = strip_tags($body);

$errors = array();
$fields = array(); 
$success_message = "";

if (isset($_POST['submit']))
{
require_once("validation.php");

$rules = array(); // stores the validation rules

$rules[] = "required,name,Your <em>Name</em> is required.";   
$rules[] = "required,senders_email,Your <em>E-mail</em> is required.";
$rules[] = "valid_email,senders_email,Please enter a valid e-mail address."; 
$rules[] = "required,address,Your <em>Address</em> is required.";  

$errors = validateFields($_POST, $rules);

if (!empty($errors))
{
$fields = $_POST;
}

// no errors! redirect the user to the thankyou page (or whatever)
else
{
mail($to,$subject,$text,$headers);
header( "Location: thanks.php" );
}
}
?>