Để thực hành bài viết này, các bạn cần:
- Cài đặt localhost với XAMPP.
- Kiến thức Bootstrap căn bản.
- Kiến thức PHP căn bản.
Thư viện sử dụng: SMTP Validate Email. Đầu tiên, bạn tạo thư mục smtp-validate-email
trong htdocs
như sau:
smtp-validate-email/
├── inc/
│ ├── smtp-validate-email.php
├── index.php
Với smtp-validate-email.php
là thư viện được tải về ở liên kết trên.
Tại tập tin index.php
.
<!doctype html>
<html class="no-js" lang="vi">
<head>
<meta charset="utf-8">
<title>SMTP Validate Email v1.0</title>
<meta name="robots" content="noindex, nofollow">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
</head>
<body>
<div class="container">
<div class="page-header">
<h3>Nhập thông tin</h3>
</div>
<form action="./" method="post">
<div class="form-group">
<label>Danh sách Email</label>
<textarea class="form-control" name="email-list" rows="10" required><?php if (isset($_POST['email-list'])) echo $_POST['email-list']; ?></textarea>
</div>
<button type="submit" name="submit" class="btn btn-primary">Lọc Danh Sách</button>
</form>
<div class="page-header">
<h3>Kết quả</h3>
</div>
<div class="form-group">
<textarea class="form-control" rows="10" onclick="this.select();">
<?php
$invalid_emails = [];
if (isset($_POST['submit'])) {
$email_list = strtolower($_POST['email-list']);
$email_list = explode("\n", str_replace("\r", "", $email_list));
require('inc/smtp-validate-email.php');
$from = '[email protected]';
foreach ($email_list as $item) {
$validator = new SMTP_Validate_Email($item, $from);
$smtp_results = $validator->validate();
if ($smtp_results[$item]) {
echo $item . "\n";
} else {
array_push($invalid_emails, $item);
}
}
}
?>
</textarea>
</div>
<div class="page-header">
<h3>Không hợp lệ</h3>
</div>
<div class="form-group">
<textarea class="form-control" rows="10" onclick="this.select();">
<?php
foreach ($invalid_emails as $item) {
echo $item . "\n";
}
?>
</textarea>
</div>
<hr>
<footer>
<p>© <?php echo date('Y'); ?> SMTP Validate Email v1.0</p>
</footer>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
</body>
</html>
Xem kết quả ở http://localhost/smtp-validate-email/
:
Lưu ý: Danh sách càng dài thì thời gian xử lí sẽ càng lâu. Ngoài ra, bạn có thể sử dụng các dịch vụ thu phí như: Hunter, Email Checker…
Chúc các bạn thành công!
Dumitru Adrian
26/08/2018 lúc 4:28 chiều
For email validation you can use also www.zerobounce.net They have great accuracy and competitive prices.
Người Qua Đường
21/06/2024 lúc 8:54 chiều
👍