• logo_cipsoft
    Nowe serwery zostały otwarte 27 Sie 2025:
    Escura (Retro Open PvP) Mystera (Retro Open PvP) us_logo Penumbra (Retro Open PvP)

PHP [KONKURS][MODERN]Walidacja emaila

Status
Zamknięty.

Kuzirashi

ASP.NET MVC, JS-SPA, PHP, NODE
Dołączył
Lipiec 24, 2010
Posty
772
Liczba reakcji
155
Plik .php po przekazaniu do niego emaila sprawdzi czy zawiera on w?a?ciwy format, oraz czy nie jest ju? on zaj?ty. Jest troch? zastosowa? takiego skryptu.
W przypadku tworzenia pliku .php w /system/application/views/ u?ywamy kodu:
PHP:
<?php
/* BY KUZIRASHI
 * GG: 4760316
 * MEMSORIA.PL
 * kuzirashi@interia.pl
 */
require('../../../config.php');
if ($_POST) {
	function valid_email($str)
	{
		return ( ! preg_match("/^([a-z0-9\+_\-]+)(\.[a-z0-9\+_\-]+)*@([a-z0-9\-]+\.)+[a-z]{2,6}$/ix", $str)) ? FALSE : TRUE;
	}
	$string = $_POST['email'];
	$string = ucfirst(strtolower($string));
			if (valid_email($string) && strlen($string) <= 100) { // alphanumeric
				if($mysqli = new mysqli($config['database']['host'], $config['database']['login'], $config['database']['password'], $config['database']['database'])) {
					if($stmt = $mysqli->prepare('SELECT `id` FROM  `accounts` WHERE  `email` =  ?')) {
						if($stmt->bind_param('s', $string)) {
							if($stmt->execute()) {
								$stmt->store_result();
								$numrows = $stmt->num_rows;
								if ($numrows == 0) {
									echo 'Good.';
								} else {
									echo 'Taken.';
								}
							} else {
								echo 'Execute fail.';
							}
						} else {
							echo 'Bind param fail.';
						}
						$stmt->close();
					} else {
						echo 'Prepare fail.';
					}
				} else {
					echo 'New mysqli fail'; 
				}
			$mysqli->close();
			} else {
				echo 'Invalid E-mail format.';
			}
		
}

?>

Reput mile widziany.

Zabraniam kopiowania zawarto?ci na inne fora/serwisy.

Notka moderatorska:
+10pkt do konkursu!
 
Status
Zamknięty.
Do góry