• 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 nazwy konta

Status
Zamknięty.

Kuzirashi

ASP.NET MVC, JS-SPA, PHP, NODE
Dołączył
Lipiec 24, 2010
Posty
772
Liczba reakcji
155
C??, ten plik .php po przekazaniu do niego nazwy konta sprawdzi czy zawiera ona w?a?ciwy format, oraz czy nazwa nie jest ju? zaj?ta. 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) {
	$string = $_POST['name'];
	$string = ucfirst(strtolower($string));
	if (strlen($string) >= 4) {
		if (strlen($string) <= 32) {
			if (ctype_alnum($string)) { // 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  `name` =  ?')) {
						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 'Forbidden characters.';
			}
		} else {
			echo 'Max. 32 characters.';
		}
	} else {
		echo 'Min. 4 characters.';
	}
}

?>

Reput mile widziany.

Zabraniam kopiowania zawarto?ci na inne fora/serwisy.

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