- Home
- Categorie
- Coding e Sistemistica
- PHP
- problema password decriptata
-
problema password decriptata
id_user username
1 erpassword
r2 er 4b43b0aee35624cd95b910189b3dc231
quindi il mio problema è qui: quando decripta la password fa un nuovo utente e si simentica dei dati di sessione riportando nel database solo questi 3 campi.
dove posso intervenire?
-
Scusa, ma non si capisce molto da quel poco che hai scritto. (cerca di essere più dettagliato.
Intanto di suggerisco di controllare se in ogni pagina php usi session_start(), in modo da non far perdere la sessione tra una pagina e l'altra.
-
grazie per la risposta.
si, uso sempre session start, pero' credo che il problema sia qui:
register:<?php
session_start();
?>
<html>
<head>
<title>Iscriviti</title>
</head>
<body>
<form action="register2.php" method="POST" name="register">
Username<input type="text" name="username"><br>
Password<input type="password" name="password"><br>
Verifica password<input type="password" name="repassword"><br>
<input type="submit" value="Iscriviti">
<?
include "config.php";
// inizializza sempre le variabili che usi in uno script
$username="";
$psw="";
$repsw="";
// assegna i valori POSTati a queste variabili hashando la password
$username=$_POST['username'];
$psw=md5($_POST['password']);
$repsw=md5($_POST['repassword']);
$ver = "SELECT * FROM messaggi WHERE username= '$username'";
$tabver = @mysql_query ($ver) or die (mysql_error());
$veruser = mysql_num_rows ($tabver);
if ($username=='' || $psw=='' || $repsw=='')
{
echo '<br>Compila correttamente tutti i campi';
}
else if ($psw !== $repsw)
{
echo "<br>Controllare la password digitata.";
}
else if ($veruser !== 0)
{
echo "<br>L'username richiesto risulta già registrato";
}
else if (eregi("[:,;èéçòà °=()]", $username))
{
echo "<br>Il nick contiene caratteri non validi.";
}
else
{
$sql = "INSERT INTO messaggi (username, password) VALUES ('$username', '$psw')";$inserimento=mysql_query( "insert into messaggi (id_user,username,password,user,gender,date_of_birth,country,test_arousal_photo1,test_valence_photo1,test_arousal_photo2,test_valence_photo2,test_arousal_photo3,test_valence_photo3,test_arousal_photo4,test_valence_photo4,test_arousal_photo5,test_valence_photo5,test_arousal_photo6,test_valence_photo6,test_arousal_photo7,test_valence_photo7,test_arousal_photo8,test_valence_photo8,test_arousal_photo9,test_valence_photo9,test_arousal_photo10,test_valence_photo10,date) values ('" . $_SESSION['id_user']. "','" . $_POST['username']. "','" . $_POST['password']. "', '" . $_SESSION['user']. "','" . $_SESSION['gender'] . "','" . $_SESSION['year'] . "-" . $_SESSION['month'] . "-" . $_SESSION['day'] . "','" . $_SESSION['country'] . "','" . $_SESSION['test_arousal_photo1'] . "','" . $_SESSION['test_valence_photo1'] . "','" . $_SESSION['test_arousal_photo2'] . "','" . $_SESSION['test_valence_photo2'] . "','" . $_SESSION['test_arousal_photo3'] . "','" . $_SESSION['test_valence_photo3'] . "','" . $_SESSION['test_arousal_photo4'] . "','" . $_SESSION['test_valence_photo4'] . "','" . $_SESSION['test_arousal_photo5'] . "','" . $_SESSION['test_valence_photo5'] . "','" . $_SESSION['test_arousal_photo6'] . "','" . $_SESSION['test_valence_photo6'] . "','" . $_SESSION['test_arousal_photo7'] . "','" . $_SESSION['test_valence_photo7'] . "','" . $_SESSION['test_arousal_photo8'] . "','" . $_SESSION['test_valence_photo8'] . "','" . $_SESSION['test_arousal_photo9'] . "','" . $_SESSION['test_valence_photo9'] . "','" . $_SESSION['test_arousal_photo10'] . "','" . $_SESSION['test_valence_photo10'] . "', now())" );
$query= @mysql_query($sql) or die (mysql_error());
echo "<br>Registrazione effettuata.";
}
@mysql_close($connection);
?>
</body>
</html>nella registrazione chiede di immettere password e username, lo fa, lo mette nel database, solo che inserisce sia la password normale che quella decriptata e quindi in 2 user differenti da un punto di vista di conto incrementativo.
forse ho una connessione al database sempre con insert invece che con un semplice controllo di select, ma nn lo trovo...:x