Sono nuovo su cheatforge e non so nemmeno se questa è la sezione giusta per postare certe cose. Io avrei un problema con la mia pag di registrazione... Quando cerco di registrarmi, mi dà questo errore:
Come pùo essere? I campi li riempio tutti e questo errore me lo da solo quando mi registro. Per creare questa pag ho usato il seguente codice:
Questo è il cod. Il database è creato e loggo perfettamente con il mio account admin, ma quando un utente si registra spunta la scritta: "Errore", "I campi username, password ed email devono essere riempiti!" Perchè? Sapete aiutarmi?
Come pùo essere? I campi li riempio tutti e questo errore me lo da solo quando mi registro. Per creare questa pag ho usato il seguente codice:
PHP:
<?
include ("functions.php");
include ("inc/foot.php");
include ("my_config.php");
/********************************************************************/
/* */
/* Dev.Login v.3.0 */
/* */
/* Copyright: */
/* © 2005/2007 */
/* Dev.Labs : Dev.Labs - Web Agency e consulenza Web Marketing, SEO, C++ */
/* */
/* */
/* Author: */
/* Giuliano Messina - .Dev. (aka NeO_Giu) */
/* */
/********************************************************************/
/* Add User / Registration */
/********************************************************************/
//------------------------------------------------------------------//
// //
// *Pagina di registrazione* //
// Registra un nuovo account //
// //
//------------------------------------------------------------------//
// Controllo di installazione non effettuata
if ( !file_exists( 'inc/config.php' ) )
Errore("install.php", "Errore", "Attenzione! Non hai ancora installato lo script!" ,".");
include ("inc/config.php");
// Azione: Registrazione utenti
$action= $_GET['action'];
if($action == "add_user_do")
{
$user= trim($_POST['MIO USER']);
$pass= trim($_POST['MIA PASSWORD']);
$pass2= trim($_POST['MIA PASSWORD']);
$name= trim($_POST['MIO NOME']);
$surname= trim($_POST['MIO USERNAME']);
$sito_web= trim($_POST['www.pcword.altervista.org']);
$mail= trim($_POST['[email protected]']);
// Check 1: Se uno dei campi del form rimane vuoto
if ($user == "" OR $pass == "" OR $mail == "") // La funziona trim esclude gli spazi e li considera anch'essi come spazio vuoto
Errore("javascript:history.go(-1)", "Errore", "I campi username, password ed email devono essere riempiti!" ,".");
// Check: Controllo scrittura corretta dell'URL del sito
if ($sito_web == "" OR $sito_web == "http://")
$sito_web = "#";
if(strpos($sito_web,"http://")!==0 & $sito_web != "#")
Errore("javascript:history.go(-1)", "Errore", "L'indirizzo del sito deve avere una struttura corretta (con http://)" ,".");
$user1 = str_replace(" ", "", $user); //Tolgo provvisoriamente lo spazio per permettere controllo caratteri non consentiti
$name1 = str_replace(" ", "", $name);
$surname1 = str_replace(" ", "", $surname);
if (!eregi("^[_.0-9a-z-]+$", $user1.$name1.$surname1))
Errore("javascript:history.go(-1)", "Errore", "L'username, il nome o il cognome hanno caratteri non consentiti." ,".");
// Check 2: Controllo password di conferma
if ($pass == $pass2)
{
/* Inizio Check */
$name = addslashes(stripslashes($name)); // Viene assicurato che gli apici e apici doppi siano anteposti da un solo slash (/) nelle variabili del form
$surname = addslashes(stripslashes($surname));
$sito_web = addslashes(stripslashes($sito_web));
$mail = addslashes(stripslashes($mail));
$name = htmlspecialchars($name); // Per compatibilità con html converte i caratteri speciali come &, >, <, ecc...
$surname = htmlspecialchars($surname);
$sito_web = htmlspecialchars($sito_web);
$mail = htmlspecialchars($mail);
// Check 3: Controllo validità E-Mail
if (eregi("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$", $mail))
{
// Check 4(1): Controllo numero caratteri minimi
$exlen = array (
'user'=>4,
'pass'=>4,
);
foreach ($exlen as $key=>$val)
{
if (strlen($$key) < $val)
Errore("javascript:history.go(-1)", "Errore", "I campi username e password devono contenere almeno 4 caratteri!" ,".");
}
// Check 4(2): Controllo numero caratteri massimi
$exlen1 = array (
'user'=>15,
'pass'=>15,
'name'=>15,
'surname'=>15,
'mail'=>30,
'sito_web'=>40
);
foreach ($exlen1 as $key1=>$val1)
{
if (strlen($$key1) > $val1)
{
Errore("javascript:history.go(-1)", "Errore", "Alcuni campi contengono troppi caratteri!" ,".");
}
}
/* Check eseguiti correttamente */
// Inserimento dati nel database
if (!get_magic_quotes_gpc())
{
$user= htmlspecialchars(addslashes($_POST['user']));
$pass= htmlspecialchars(addslashes($_POST['pass']));
}
else
{
$user= htmlspecialchars($_POST['user']);
$pass= htmlspecialchars($_POST['pass']);
}
// Connessione mysql
Db_connect();
// Sub-Check 1: Controllo user già esistente
$query = "SELECT * from ".$tbl_prefix."user WHERE username = '$user'";
$risultato = mysql_query($query);
$num_righe = mysql_num_rows($risultato);
// Sub-Check 1 = TRUE: L'utente risulta già nel database quindi è già registrato!
if($num_righe)
Errore("javascript:history.go(-1)", "Errore", "L'username inserito è già utilizzato da un altro utente" ,".");
// Sub-Check 2: Controllo mail già esistente
$query = "SELECT * from ".$tbl_prefix."user WHERE mail = '$mail'";
$risultato = mysql_query($query);
$num_righe = mysql_num_rows($risultato);
// Sub-Check 2 = TRUE: La mail è già stata registrata
if($num_righe)
Errore("javascript:history.go(-1)", "Errore", "L'e-mail inserita è già stata utilizzata da un altro utente" ,".");
//Query configurazione
$query2 = "SELECT * from ".$tbl_prefix."config";
$risultato2 = mysql_query($query2);
$num_righe2=mysql_fetch_row($risultato2);
$auth = Auth();
// Cripta la password nel database in md5
$crypt_auth = md5($auth);
$data = date("d.m.Y");
// Cripta la password nel database in md5
$crypt_pass = md5($pass);
$query = "INSERT INTO ".$tbl_prefix."user (username , password , nome , cognome , mail , data , sito_web , auth) VALUES ('$user', '$crypt_pass' , '$name' , '$surname' , '$mail' , '$data', '$sito_web', '$crypt_auth')";
if (mysql_query($query))
{
// Invio email per la conferma della registrazione (Se richiesto dall'admin)
if ($num_righe2[0]==1)
{
$query = "SELECT * FROM ".$tbl_prefix."user WHERE username = '$user'";
$result = mysql_query($query) or die("<img src=\"http://www.inforge.net/community/images/button_cancel.png\"> <span class=\"Stile7\">Errore nell'esecuzione della query.</span>");
$row = mysql_fetch_array($result);
$oggetto = "$sito - Conferma registrazione account $user";
$messaggio = "
<html>
<head>
<title>$sito - Conferma registrazione account $user</title>
</head>
<body>
<p>Dev.Login - <b>$sito</b></p>
<br />Conferma account $user</b>
<br /><br />Per completare la registrazione <a href=\"$urlsito/add_user.php?action=confirm&auth=$row[auth]\">clicca qui</a>
<br />Grazie per esserti registrato!
</p>
</body>
</html>";
$intestazioni = "MIME-Version: 1.0\r\n";
$intestazioni .= "Content-type: text/html; charset=iso-8859-1\r\n";
$intestazioni .= "From: $sito <$web_mail>\r\n";
mail($mail, $oggetto, $messaggio, $intestazioni);
Ok("javascript:history.go(-1)", "Registrazione completata", "E' stata inviata una email all'indirizzo $mail con tutte le istruzioni per attivare l'account." ,".");
}
// Registrazione avvenuta con successo (Se l'admin non attiva l'invio email di conferma)
else
{
$query3="UPDATE ".$tbl_prefix."user SET actived = 1 WHERE username = '$user'";
$risultato3 = mysql_query($query3) or die("<img src=\"http://www.inforge.net/community/images/button_cancel.png\"> <span class=\"Stile7\">Errore nell'esecuzione della query di attivazione.</span>");
Ok("javascript:history.go(-1)", "Registrazione completata", "Registrazione effettuata correttamente" ,".");
}
}
mysql_close();
}
// Check 3 = FALSE: La mail inserita non è scritta correttamente
else
Errore("javascript:history.go(-1)", "Errore", "L'indirizzo email non ha una sintassi corretta (es. [email protected])" ,".");
}
// Check 2 = FALSE: La password di controllo non è uguale alla password inserita
else
Errore("javascript:history.go(-1)", "Errore", "La password di controllo inserita non è corretta" ,".");
}
// Conferma indirizzo email
if($action == "confirm")
{
Db_connect();
$auth=$_GET["auth"];
if (trim($auth) == "")
Errore("javascript:history.go(-1)", "Errore", "Codice di autorizzazione non corretto" ,".");
$query="UPDATE ".$tbl_prefix."user SET actived = 1 WHERE auth = '$auth'";
$risultato = mysql_query($query) or die("<img src=\"http://www.inforge.net/community/images/button_cancel.png\"> <span class=\"Stile7\">Il codice di autorizzazione non è corretto.</span>");
Ok("login.php", "Conferma effettuata", "Conferma indirizzo email avvenuta con successo" ,".");
}
// Non si è verificata l'azione di registrazione utenti
Registrazione();
menu();
foot();
?>
Questo è il cod. Il database è creato e loggo perfettamente con il mio account admin, ma quando un utente si registra spunta la scritta: "Errore", "I campi username, password ed email devono essere riempiti!" Perchè? Sapete aiutarmi?