[英]PHP Email Validation & Append URL
如果對此已經有答案,我深表歉意。 我已經看過了,我簡直無法做出我已經看過的答案,所以請...要溫柔。
我對PHP確實很陌生,並不精通Javascript。 本質上,我只是在為自己的企業建立一個網站,而我想做的就是在主頁上建立潛在客戶表格。 目的是安全地獲取客戶的電子郵件地址,並將他們的電子郵件附加到URL上,將其重定向到預訂頁面。
即,客戶在首頁上輸入其電子郵件地址
www.hygenius.co
當他們單擊“提交”時,它將驗證他們是否輸入了真實地址,並且該字段不是空白,然后將其轉到
www.hygenius.co/book?email=customersemail
但是,對於我的一生來說,我似乎無法獲得我試圖工作的任何東西。
到目前為止,我的表單看起來像這樣;
<form action="lead.php" method="POST">
<input type="text" name="email" placeholder="Enter a valid E-mail Address">
<span class="error">* <?php echo $emailErr;?></span>
<input type="submit" name="submit" value="Submit">
</form>
我的lead.php文件看起來像這樣。
<?php
// define variables and set to empty values
$emailErr = "";
$email = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["email"])) {
$emailErr = "Email is required";
} else {
$email = test_input($_POST["email"]);
// check if e-mail address is well-formed
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
$emailErr = "Invalid email format";
}
}
}
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
header( 'Location: http://www.hygenius.co/book.html' ) ;
?>
到目前為止,我甚至還沒有設法使電子郵件驗證正常工作,我試圖遵循W3schools的指導,但沒有任何效果。 它僅允許您單擊提交並直接進入預訂頁面,而無需任何驗證,並且也不會出現錯誤消息。 我不知道如何進入可以將信息附加到URL的階段。
我敢肯定,我在這里只是非常難以置信,編碼根本不是我的專長,但是任何有關如何進行這項工作以及我將要去哪里的指導都將得到極大的贊賞。
溫暖的問候,
喬納森·克勞。
我將邏輯(必須為非空和有效的電子郵件)組合在一起,然后進行重定向。 否則顯示一般無效錯誤。
<?php
$emailErr = "";
if ($_SERVER["REQUEST_METHOD"] == "POST")
{
if (
!empty($_POST["email"]) &&
filter_var($_POST["email"], FILTER_VALIDATE_EMAIL)
)
{
header('location: ?email=' . urlencode($_POST["email"]));
exit;
} else {
$emailErr = "Valid email address required.";
}
}
?>
<form method="POST">
<input type="text" name="email" placeholder="joe@example.com">
<span class="error"><?php echo $emailErr;?></span>
<input type="submit" name="submit" value="Submit">
</form>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.