[英]message delivered confirmation in php
我正在為我的學期項目制作一個php網站...並且我有一個與我們聯系的頁面,用戶可以在其中向我發送一條消息,並將該消息存儲在數據庫中。 但是我希望當用戶鍵入消息並單擊“發送”按鈕時,然后在檢查表單驗證后將其發送給用戶“您的消息已傳遞”。 如果驗證中有問題,它會告訴用戶鍵入acc以符合要求,這是我的代碼。
<?php
// define variables and set to empty values
$yournameErr = $emailErr = $messageErr = "";
$yourname = $email = $message = "";
if ($_SERVER["REQUEST_METHOD"] == "POST")
{
if (empty($_POST["yourname"]))
{$yournameErr = "Name is required"; }
else
{$yourname = test_input($_POST["yourname"]);}
if (empty($_POST["email"]))
{$emailErr = "Email is required";}
else
{$email = test_input($_POST["email"]);
// check if e-mail address syntax is valid
if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email))
{
$emailErr = "Invalid email format";
}
}
if (empty($_POST["message"]))
{$messageErr = "Message is required"; }
else
{$message = test_input($_POST["message"]);}
}
function test_input($data)
{
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
我的表格是:
<form action="contact.php" name="Form1" id="Form1" method="post">
<div>
<label>Your Name:</label>
<br />
<input type="text" name="yourname"
id="yourname" placeholder="Full Name" style="border:1; border-color:#000000; " />
<span class="error">* <?php echo
$yournameErr;?></span>
</div>
<br />
<br />
<div>
<label> Email :</label> <br />
<input name="email" type="text"
id="email" size="20" placeholder="Email" style="border:1; border-color:#000000; " />
<span class="error">* <?php echo
$emailErr;?></span>
</div>
<br />
<br />
<div>
<label> Subject : </label><br />
<input name="subject" type="text"
id="subject" size="20" placeholder="Subject" style="border:1; border-
color:#000000; " />
</div>
<br />
<br />
<div>
<label> Message :<br /> </label>
<textarea rows="5" cols="40"
name="message" type="text" id="message" placeholder="The message you want to
send to us." style="border:1; border-color:#000000 " >
</textarea>
<span class="error">* <?php echo
$messageErr;?></span>
</div>
<br />
<br />
<div>
<input type="submit" name="button"
id="button" style="border:1; border-color:#999999; " value="SEND"/>
</div>
</form>
假設您的HTML代碼與PHP代碼位於同一文件中,則可以將其添加到HTML代碼中:
<?php if(isset($messageErr) && $messageErr){ ?>
<div class="error"><?php echo $messageErr; ?></div>
<?php } ?>
<?php if($_SERVER["REQUEST_METHOD"] == "POST" && !$messageErr){ ?>
<div class="error">Message Delivered</div>
<?php } ?>
只需確保PHP代碼和HTML代碼都在一個.php文件中,並且表單操作值也相同。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.