11/08/2007 13:21:40
Interessante, una password che se cambi il charset della tastiera probabilmente non viene piu' riconosciuta :D
12/08/2007 23:26:20
@faber@ Urca faber nemmeno spiegandolo riga per riga ??? O_o ... mi sorge il dubbio che tu non conosca il significato dell'istruzione break ... possibile ?!?!?
(ho messo degli _ al posto degli spazi, magari con l'indentazione il codice si legge meglio)
Ah e ... beh e' statisticamente piuttosto complicato che esca un carattere dei 12 non voluti invece che dai restanti 62 per "migliaia" di volte di seguito ...
@nod@ ha ragione faber, nelle pwd generate non e' una grande idea avere caratteri speciali mentre in quelle scelte dall'utente lo e' ;-)
@mook@ Ottima idea quella delle espressioni regolari! ma ... che succede quando nella pwd ci finiscono dei "no" ? e poi non si puo' odiare il while! ... e' uno dei costrutti fondamentali della programmazione strutturata in fin dei conti ;-)
Inoltre il mio codice serve a produrre una sola lettera perche' doveva sostituire l'omonima funzione in iscrizione3.php di GDRCD, non a generare tutta la pwd.
Ok, vediamo di tirare fuori qualcosa di buono dall'unione degli sforzi ;-)
13/08/2007 13:10:20
@adrian
nella password se finiscono dei no è perché è sbagliato il range di char.
Come l'ho impostato io non dovrebbero mai uscire dei no è solo per controllo XD. E cmq i while sono sciattoni! viva i for!
13/08/2007 13:27:54
Certo che possono uscire dei no ! nel range da 48 a 122 della tabella ASCII ci sono dei caratteri di punteggiatura e altro, proprio quelli che nel mio if e nella tua regex vengono individuati. Il mio ciclo serve appunto a fare in modo che se esce uno di questi caratteri non desiderati si generi un nuovo numero finche' non esce una lettera o un numero.
14/08/2007 08:09:50
Ok concordo XD c'è pure da dire che no l'ho messo così a casaccio. Cmq eviterei di fare un 2 funzioni. E' più elegante riunire tutto in una sola funzione magari con un solo for e l'if che richiama una "rigenerazione" di lettera. Volendo lavorandoci su si puo fare pure il confronto che la lettera precedente non sia uguale alla successiva. Un piccolo passo per la sicurezza XD
14/08/2007 10:22:24
L'istruzione break interrompe l'esecuzione di una sequenza, anche posta all'interno di un ciclo e salta alla prima istruzione successiva alla chiusura della graffa che lo la contiene.
17/08/2007 00:48:44
17/08/2007 09:43:57
@adrian
la modularità ha senso solo in uno stile OOP. In uno stile a funzioni in un funzione di generazione password quanto ha senso usare 2 funzione invece di 1? La modularita in cose così piccole è(oltre ad essere inelegante) anche molto lesiva a livello di prestazione(allocazione di una funzione in memoria invece che di una sole esecuzione). Inoltre le regex non sono tanto efficienti(c'è sempre il problema di come vengono eseguite) ma assicurano un esecuzione più corretta rispetto a tanti altri metodi
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD e Open Source Elenco Forum
I dati del generatore di rank sono stati aggiornati!