ciao a tutti....stò avendo un piccolo problemino....
allora....
ho creato un form per inserimento dati nuovi utenti....nell'invio mi da sempre l'errore all'email anche se l'ho scritta bene...nello stesso momento correi che questi dati arrivassero alla mia email......
lo script è questo:
Codice PHP:
<?php
//Start session
session_start();
//Include database connection details
require_once('config.php');
//Array to store validation errors
$errmsg_arr = array();
//Validation error flag
$errflag = false;
//Connessione al mysql server
$link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);
if(!$link) {
die('Connessione al server Fallita: ' . mysql_error());
}
//Seleziona il database
$db = mysql_select_db(DB_DATABASE);
if(!$db) {
die("Database non Selezionato");
}
//Function to sanitize values received from the form. Prevents SQL injection
function clean($str) {
$str = @trim($str);
if(get_magic_quotes_gpc()) {
$str = stripslashes($str);
}
return mysql_real_escape_string($str);
}
//Sanitize the POST values
$fname = clean($_POST['fname']);
$lname = clean($_POST['lname']);
$login = clean($_POST['login']);
$email = clean($_POST['send_email']);
$password = clean($_POST['password']);
$cpassword = clean($_POST['cpassword']);
//Controllo degl'input
if($fname == '') {
$errmsg_arr[] = 'Inserire il Nome';
$errflag = true;
}
if($lname == '') {
$errmsg_arr[] = 'Inserire il cognome';
$errflag = true;
}
if($login == '') {
$errmsg_arr[] = 'Inserire il tuo Login';
$errflag = true;
}
if (!eregi("^[a-z0-9][_.a-z0-9-]+@([a-z0-9][0-9a-z-]+.)+([a-z]{2,4})", $email)){
$errmsg_arr[] = 'Inserire email corretta';
$errflag = true;
}
if($password == '') {
$errmsg_arr[] = 'Inserire la Password';
$errflag = true;
}
if($cpassword == '') {
$errmsg_arr[] = 'Inserire la Conferma password';
$errflag = true;
}
if( strcmp($password, $cpassword) != 0 ) {
$errmsg_arr[] = 'Password non Uguali';
$errflag = true;
}
//Controlla se login ID è già inserito
if($login != '') {
$qry = "SELECT * FROM members WHERE login='$login'";
$result = mysql_query($qry);
if($result) {
if(mysql_num_rows($result) > 0) {
$errmsg_arr[] = 'Login utilizzata';
$errflag = true;
}
@mysql_free_result($result);
}
else {
die("Query fallita");
}
}
//Se la registrazione è invalida ritorna al form
if($errflag) {
$_SESSION['ERRMSG_ARR'] = $errmsg_arr;
session_write_close();
header("location: register-form.php");
exit();
}
//Creare INSERT alla query
$qry = "INSERT INTO members(firstname, lastname, email, login, passwd) VALUES('$fname','$lname','$email','$login','".md5($_POST['password'])."')";
$result = @mysql_query($qry);
//Controlla se la Query è avvenuta con successo oppure no
if($result) {
header("location: register-success.php");
exit();
}else {
die("Query fallita");
}
?>
se non inserisco il controllo email la registrazione avviene.....se lasci la scritta così non registra niente al mio db e mi esce sempre l'errore dell'email...io vorrei possibilmente avere sia il controllo email e vorrei inserire anche inserire un invio alla mia email per ricevere i dati dell'utente....
aiutate.....
non riesco a capire dove sbaglio!!!!
help me please....