PROBLEMA Validazione e controllo email e pass

Nozomi

Nuovo Utente
20
2
Salve a tutti. Ho creato un form di registrazione ed ho la necessità di un controllo su email e pass.
Dovrei controllare se l'email esiste nel database e se il suo formato è corretto (cosi da evitare inserimenti tipo dagtaagaga), per quanto riguarda la pass devo controllare semplicemente che siano uguali. Il tutto dovrebbe restituire dei messaggi di errore in caso di email esistente o pass uguali.

Al momento sono riuscito a risolvere solamente la convalida della pass con un semplice script javascript.
Per quanto riguarda la mail non riesco a concludere nulla purtroppo.

Qualche consiglio? Allego alcune porzioni di codice:

Con questa gestisco l'inserimento dei campi nel db.
PHP:
<?php

if(isset($_POST['user'])&&isset($_POST['pass1'])){
$pass=md5($_POST['pass1']);
$user=addslashes(strip_tags($_POST['user']));
$mail=addslashes(strip_tags($_POST['mail']));

mysql_query("INSERT INTO utenti (nickname, password, mail) VALUES ('$user', '$pass', '$mail')");
$q = mysql_query("SELECT nickname,password,idutente,master FROM utenti WHERE nickname = '$user'");
$r = mysql_fetch_array($q, MYSQL_NUM);
$_SESSION['user']=$r[0];
$_SESSION['idutente']=$r[2];
$_SESSION['master']=$r[3];
$fp = fopen('log/iscrizioni.txt', 'a');  
fwrite($fp, "[NEW USER] [". date("d/m/Y") ."] [". date("H.i:s") ."] [" . $_SERVER['REMOTE_ADDR'] . "] [".

$_SESSION['user'] ."]\n");
    header("location: home.php");
}

if (isset($_SESSION['user'])) {
    header("location: home.php");
}

?>
Con questa controllo se le pass sono differenti o meno:
Codice:
<script language="Javascript" type="text/javascript">
<!--
function testpass(modulo){


  // Verifico che il campo password sia valorizzato in caso contrario
  // avverto dell'errore tramite un Alert
  if (modulo.pass1.value == ""){
    alert("Errore: inserire una password!")
    modulo.pass1.focus()
    return false
  }
  // Verifico che le due password siano uguali, in caso contrario avverto
  // dell'errore con un Alert
  if (modulo.pass1.value != modulo.pass2.value) {
    alert("La password inserita non coincide con la prima!")
    modulo.pass1.focus()
    modulo.pass1.select()
    return false
  }
  return true
}

-->
 

elvan2

Utente Èlite
6,520
1,990
CPU
Intel i5 4590
Dissipatore
CM Hyper T4
Scheda Madre
H97 PLUS Asus
HDD
vari
RAM
HyperX (2X4GB) DDR3 1600MHz
GPU
Sapphire TOXIC R9 270X 2GB
PSU
Antec Neo Eco 520c
Case
Zalman z3
Se vuoi controllare se esiste già una mail prova con :
PHP:
if(strpos(file_get_contents('log/iscrizioni.txt'), $mail) !== false) {
echo "mail già utilizzata" ; }

Non sono sicuro ma prova dai
 

Nozomi

Nuovo Utente
20
2
Provato ma purtroppo non funziona.

Perchè log/iscrizioni.txt? Quello è semplicemente un file dove tengo traccia di tutte le iscrizioni ma il controllo dovrebbe essere fatto sul database, che ha una tabella utenti con una colonna "mail".
 

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!

Discussioni Simili