Quando provo a Registrami mi viene questo errore: "errore nel controllo della presenza dell'userid candidato"
Codice PHP:
<?php
$user=$_POST['username'];
$email=$_POST['email'];
$pass=$_POST['password'];
$conn=mysql_connect('localhost','astropvt','');
if(!$conn)
{
echo("ERRORE NELLA CONNESSIONE AL SERVER");
exit();
}
mysql_select_db("my_astropvt");
$controlla = sprintf("SELECT COUNT (*) as numero FROM utenti WHERE (username=%s), $user"); //Conto quanti utenti nel db hanno il nome che il candidato iscritto ha scelto
$result = mysql_query($controlla) or die ("errore nel controllo della presenza dell'userid candidato");
$riga = mysql_fetch_assoc($result);
if ($riga['numero'] == 0) //Se non ci sono utenti che hanno già quel nome, procedo con l'inserimento nel db
{
$insert="INSERT INTO utenti (username, email, password) VALUES ('$user','$email','$pass')";
if(!MYSQL_query($insert))
{
echo ("ERRORE NELL'INSERIMENTO");
exit();
}
echo ("Dati inseriti corretamente");
}
else
{
$errore = 1;
}
mysql_close($conn);
$indirizzo_errore = "registrati.php?errore=1";
$indirizzo_corretto = "index.php";
if (isset($errore))
{
$nuovo_indirizzo = $indirizzo_errore;
}
else
{
$nuovo_indirizzo = $indirizzo_corretto;
}
?>
<html>
<head>
</head>
<body onload="location.href='<?php echo $nuovo_indirizzo; ?>';"> <!--Ti carica, appena la pagina viene aperta, l'indirizzo di un'altra pagina ossia quella giusta o quella d'errore; location.href è l'indirizzo della pagina corrente-->
</body>
</html>
E i dati non vengono inseriti ne DB. Ci dovrebbe essere un intoppo con il SELECT COUNT.
L'accessi.php con le dovute modifiche
Codice PHP:
<?php
session_start();
$nomehost = "localhost";
$nomeuser = "astropvt";
$password = "";
$dbname="my_astropvt";
$conn=mysql_connect('localhost','astropvt','');
mysql_select_db("my_astropvt");
$user = mysql_real_escape_string($_POST['Username']);
$pass = mysql_real_escape_string($_POST['Password']);
$sql = "SELECT * FROM utenti WHERE username = '{$user}' AND password = '{$pass}'";
$result = mysql_query($sql,$conn) or die ("Errore: ".mysql_error());
$row = mysql_num_rows($result);
if($row =="1"){ //se il risultato è positivo
echo "Login effettuato con successo";
session_register("Logged"); //registra la sessione
}
mysql_close($conn)
?>
Nonostante esse, se provo a logarmi coi dati già all'interno del DB, non mi fa logare, mi si ricarica semplicemente la pagina principale.