23/04/14 18:07
alfredom15
Dopo aver iniziato ad apprendere le basi del mysql+php , sto facendo alcuni siti di prova e mi sono sorti due problemi, seppur non troppo complessi (credo):
1. Nel sito che sto attualmente progettando c'è un negozio con determinati oggetti (inseriti in una tabella "oggetti dal database), ogni utente ,tramite crediti , può acquistare questi oggetti . Ora il problema è il seguente:
Come faccio a creare una pagina in cui mostro tutti gli oggetti acquistati dall' utente connesso?
2. Per effettuare il login ho messo due semplici form in html che attraverso il get , mandano i valori ad una pagina php (cioè la home) che a sua volta fa un semplice confronto tra i campi del database e i valori inseriti.
Vi posto tutto il codice di home.php (all' inizio controllo attraverso i cookie se l' utente ha già effettuato l'accesso o se deve/si e' appena registrato (ditemi se esiste un modo più semplice o comunque più efficace)) .
Il tutto mi sembra abbastanza "instabile" a livello di sicurezza , qual' è il modo più sicuro e/o utilizzato per login ?
-Spero di essermi spiegato bene , e grazie in anticipo-
1. Nel sito che sto attualmente progettando c'è un negozio con determinati oggetti (inseriti in una tabella "oggetti dal database), ogni utente ,tramite crediti , può acquistare questi oggetti . Ora il problema è il seguente:
Come faccio a creare una pagina in cui mostro tutti gli oggetti acquistati dall' utente connesso?
2. Per effettuare il login ho messo due semplici form in html che attraverso il get , mandano i valori ad una pagina php (cioè la home) che a sua volta fa un semplice confronto tra i campi del database e i valori inseriti.
Vi posto tutto il codice di home.php (all' inizio controllo attraverso i cookie se l' utente ha già effettuato l'accesso o se deve/si e' appena registrato (ditemi se esiste un modo più semplice o comunque più efficace)) .
<?php include ("config.php"); $nome=""; @$nome=$_COOKIE['utente']; if($nome!="") { $query = "SELECT uid, name,email, password, crediti,autorizzazione FROM utenti WHERE name = '$nome'"; $result = mysql_query($query, $myconn) or die('Errore...'); $resrow = mysql_fetch_row($result); $name = $resrow[1]; $crediti = $resrow[4]; $aut = $resrow[5]; if ($aut==1) { $grado = "amministratore";} else { $grado = "utente"; } echo "Bentornato $nome<br> "; echo "$crediti <img src='img/crediti.png'></img><br>"; echo "Hai i privilegi da $grado<br><br>"; echo "Clicca <a href='logout.php'>Qui</a> per disconnetterti"; } else { @$nome = $_GET['nome']; @$password = $_GET['pass']; $query = "SELECT uid, name,email, password, crediti FROM utenti"; $result = mysql_query($query, $myconn) or die('Errore...'); $numrows = mysql_num_rows($result); $x=0; $flag="errato"; while($x<$numrows&&$flag=="errato"){ $resrow = mysql_fetch_row($result); if($nome==$resrow[1]&&$password==$resrow[3]){ $flag="corretto";} else { $flag="errato"; } $x=$x+1; } if($flag=="corretto") { $nome = $_GET['nome']; echo "Benvenuto $nome , hai effettuato correttamente l' accesso"; header('refresh: 1; url=home.php');} else { echo "Nome e/o password errati , o non inseriti , redirect al login"; header('refresh: 2; url=login.php');} } setcookie("utente", @$nome, time()+3600); setcookie("crediti",@$crediti, time()+3600); setcookie("grado", @$aut, time()+3600); mysql_close() ?>
Il tutto mi sembra abbastanza "instabile" a livello di sicurezza , qual' è il modo più sicuro e/o utilizzato per login ?
-Spero di essermi spiegato bene , e grazie in anticipo-
Ultima modifica effettuata da alfredom15 23/04/14 18:14
aaa