<?php
class InvalidEmailException extends Exception {
function __construct($message, $email) {
$this->message = $message;
$this->notifyAdmin($email);
}
private function notifyAdmin($email) {
mail("admin@yourdomain.com","INVALID EMAIL",$email,"From:web@example.com");
}
}
class subscribe {
function validateEmail($email) {
try {
if ($email == "") {
throw new Exception("You must enter an e-mail address!");
} else {
list($user,$domain) = explode("@", $email);
if (! checkdnsrr($domain, "MX")) {
throw new InvalidEmailException("Invalid e-mail address!", $email);
} else {
return 1;
}
}
} catch (Exception $e) {
echo $e->getMessage();
} catch (InvalidEmailException $e) {
echo $e->getMessage();
}
}
function subscribeUser() {
echo $this->email." added to the database!";
}
}
$_POST['email'] = "someuser@example.com";
if (isset($_POST['email'])) {
$subscribe = new subscribe();
if($subscribe->validateEmail($_POST['email']))
$subscribe->subscribeUser($_POST['email']);
}
?>
|