Perfetto , ora mi dice sempre = registrazione effettuata con successo ç_ç ( però non inserisce nel database )
Non visualizza gli errori , tipo se metto 2 @@
Ho inserito vari controlli , un espressione regolare.
Codice PHP:
<?php
/* Conneto al database */
$connessione = mysql_connect("localhost","narakuprova","****")or die("Connessione non riuscita: " . mysql_error());
mysql_select_db("my_narakuprova", $connessione) or die("Errore nella selezione del database");
/* Funzione per verificare dati ricevuti */
function verifica($value)
{
if (get_magic_quotes_gpc())
{
$value = stripslashes($value);
}
if (!is_numeric($value))
{
$value = "'" . mysql_real_escape_string($value) . "'";
}
return $value;
}
/* Recupero i dati */
$nome = verifica ($_POST['nome']);
$pass = verifica ($_POST['pass']);
$mail = verifica ($_POST['mail']);
$villo = verifica ($_POST['villaggio']);
$sex = verifica ($_POST['genere']);
/* Assegno variabile di avanzamento */
$ok = false;
/* 1] Verifico che tutti i campi SONO compilati */
if (empty($nome) || empty($pass) || empty($mail) || empty($villo) || empty($sex))
{
echo " Devi inserire tutti i campi per poter completare la registrazione ";
$ok = false;
}
/* 1] Se tutti i campi SONO compilati */
else
{
$ok = true;
}
if ( $ok === true )
{
/* 2a] Verifiche E-MAIL */
/* 2]a Verificio che l'e-mail sia valida */
$posmail1 = strpos($mail, " ");
if ($posmail1 != false)
{
echo "La tua mail non è valida";
$ok = false;
}
$cercare = "/[@]{1}/" ;
if ( preg_match ($cercare,$mail))
{
$ok = true;
}
else
{
$ok = false;
echo " contiene troppe chiocciole ";
}
/* 2]b Verificio che l'e-mail non sia già contenuta nel database*/
$mailcontrollo = " SELECT email FROM personaggio WHERE email = '$mail'";
$risultatomail = mysql_query ($mailcontrollo,$connessione);
$trovatimail = mysql_num_rows($risultatomail);
if ($trovatimail > 0)
{
$ok = false;
echo " L'indirizzo e-mail è già associato ad un altro account ";
}
/* 2c] Verifiche PASS */
/* 2b]a Verificio che la password sia min 4 caratteri e max 8 */
$lungpass = strlen($pass);
if ($lungpass < 4 || $lungpass >8 )
{
echo "</br>" . "La tua password non è valida";
$ok = false;
}
/* 2b]b Verifico che la pass non contenga spazi */
$pospass1 = strpos($pass, " ");
if ($pospass1 != false)
{
echo "La tua pass non è valida";
$ok = false;
}
/* 2c] Verifiche Nome */
/* 2c]a Verifico che il nome sia compreso fra le 5 e le 12 lettere */
$lungnome = strlen($nome);
if ($lungpass < 5 || $lungpass >12 )
{
echo "</br>" . "Il tuo nome non è valido";
$ok = false;
}
/* 2c]b Verificare che il nome non sia presente nel database */
$nomecontrollo = "SELECT nome FROM personaggio WHERE nome = '$nome'";
$risultatonome = mysql_query($nomecontrollo,$connessione);
$trovatinome = mysql_num_rows($risultatonome);
if ( $trovatinome > 0)
{
$ok = false;
echo "</br>" . "Il nome è già utilizzato ";
}
/* 2c]c Verifico che il nome non contenga spazi */
$posnome1 = strpos($nome, " ");
if ($posnome1 != false)
{
echo "Il tuo nome non è valido";
$ok = false;
}
}
/* 3] Se tutto è ok , Inseriamo */
if ($ok == true)
{
$inserisci= " INSERT INTO personaggio ( nome , pass , email , sesso ) VALUES ( '$nome' , '$pass' , '$mail' , '$sex' )";
$insquery = mysql_query($inserisci,$connessione);
echo " Registrazione effettuata con successo ";
}
?>