Originariamente inviato da marketto
secondo me ti conviene memorizzare il codice protetto con MD5 all'interno del db, dentro un campo CHAR(32), poi per verificare l'autenticazione fai subito un:
codice:
SELECT campo FROM tabella WHERE campo = MD5('$valore');
dove $valore ti arriva dal form, ed è stata ripulita con trim, mysql_escape_string, htmlentites, etc.
Con la password personalmente faccio cosi': la prima operazione possibile appena arrivato nella pagina.

$pwd = MD5($_POST['password']);

Me ne impippo di verificare la pwd. Se ci sono caratteri strani non ci sara' corrispondenza nel db e nello stesso tempo lo user puo' utilizzare tutti i caratteri che vuole.

Per le sql injection trovi una tonnellata di materiale specie su siti universitari... Sono comunque facili da parare. Quella stringa di 13manuel84 e' passata perche' l'avra' eseguita direttamente da shell (phpmyadmin).