Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    aiuto funzione implode per creare variabile con stringa numerica

    <?php
    $passw=rand(48,122);
    if((($passw>=48)&&($passw<=57))||(($passw>=65)&&($ passw<=90))||(($passw>=97)&&($passw<=122)))
    {
    printf("%c", $passw);
    }
    ?>
    Ciao ragazzi, allora arrivo subito al dunque, ho creato lo script che avete appena visto per generare una password casuale,
    provandolo mi stampa correttamente tutti i caratteri ascii che ho scelto con la condizione if e mi stampa invece vuoto quando incontra un carattere che con la condizione ho voluto escudere,
    ora per generare una stringa unica di 8 caratteri senza spazi e poter creare così la password dovrei fare un implode, ma non avendo mai usato questa funzione non sò come si usa,
    sto combinando un disastro, ho fatto così:


    <?php
    $lunghezza =8;
    for ($ciclo = 0; $ciclo < $lunghezza; $ciclo++) {

    $passw=rand(48,122);

    if((($passw>=48)&&($passw<=57))||(($passw>=65)&&($ passw<=90))||(($passw>=97)&&($passw<=122)))
    {
    $pass_temp = $passw[$num];
    #qui dovrei fare qualcos'altro tipo un array e un implode... che abbiano 8 elementi???
    #oppure questo punto è sbagliato? Se è così xfavore correggetemelo
    #non so che fare
    #[.......... ??? .......]
    $rand_password = implode("", $ECCETERA_BOO!! );
    }
    }
    echo $rand_password;//qui dovrebbe stamparmi la stringa casuale di 8 caratteri es: 8hGr2Mc7

    ?>
    Non voglio uno script pronto, perciò lo sto creando da me, ma mi sono bloccato su questa funzione che non conosco, potete aiutarmi a completarlo? Grazie a tutti.

  2. #2
    In pseudo codice:

    - Crei un array con i caratteri che non vuoi che siano inseriti nella password.
    - Imposti una variabile a 0 (es. $i).
    - Imposti una variabile come array vuoto (es. $pwd)
    - Effettui un ciclo fin tanto che $i e' minore di 8
    - - Crei un carattere a caso nel range che ti interessa
    - - Se il carattere non e' compreso nell'array creato al punto 1
    - - - Incrementi $i di 1
    - - - Aggiungi il carattere all'array $pwd
    - Applichi implode all'array $pwd come da manuale passando come glue una stringa vuota.

  3. #3
    Ciao filippo, grazie per lo pseudo codice, la teoria di questa funzione la conosco, è in pratica che non so come fare, il php lo sto imparando pian pianino ora, come si può notare i caratteri che non mi servono li escludo già nell'if, poi dovrei continuare con un array e con l'implode ma non so come procedere, diciamo che non riesco ad associare gli esercizi/esempi di php.net con quello che sto facendo, mi hanno detto che ci sono quasi, ma nessuno mi dice come completare, non so più come fare. per favore aiutatemi a completarlo, sarebbe piuttosto urgente. Devo completare questo lavoro, ho già tutto e mi manca solo sto pezzo. Grazie mille a tutti.

  4. #4
    Codice PHP:
    <?php 

    $chars 
    array_merge(range('0''9'), range('A''Z'), range('a''z'));

    $pwd '';

    $count 8;

    for(
    $i 0$i $count$i++) {
        
    shuffle($chars);
        
    $pwd .= $chars[0];
    }

    print(
    $pwd);

    ?>

  5. #5
    ...allora io stavo scegliendo la stada più complicata... filippo se funziona sarai il mio idolo. Ciao

  6. #6
    Ciao filippo, ha funzionato alla stragrande, grazie a te ho completato il lavoro. Crea la password, faccio l'update sulla vecchia e invio all'utente la nuova pass poi è lui una volta loggato a scegliere se modificarla o tenerla... Grazie ancora filippo... grazie,grazie,grazie,grazie,grazie.....

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.