Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 26

Discussione: espressioni regolari

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    125

    espressioni regolari

    Ciao, vorrei inserire il controllo sugli indirizzi mail questo è il codice ma non funziona, come mai?


    file nome: "3.php"

    <form method="get" action="4.php">
    <?
    if($var1=="1" or $var1a=="1a" )
    {echo $fontmail= '<a class="formerror">mail ko </a>'; }
    else if ($var2=="" )
    {echo $fontcell= '<a class="form" >mail</a>';}
    ?>
    <input type="Text" name="mail">
    <input type="submit" value="invia">
    </form>

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    file nome: "4.php"
    <?
    if ($mail=="")
    {$mia_var=$mia_var.'var1=1&';}
    if ($r!==ereg('^[^@]+@[^@]+\.[^@\.]+$, $mail') )
    {$mia_var=$mia_var.'var1a=1a&';}
    ?>

    <script language="javascript" type="text/javascript">
    document.location.href="3.php?mail=<? echo $mail;?>
    &<?echo $mia_var;?>";
    </script>
    :tongue:

  2. #2
    guarda l'espressione regolare di andr3a
    Codice PHP:
    function checkMail$m ) {
    //Script di Andr3a 
    $r "([a-z0-9]+[\._\-]?){1,3}([a-z0-9])*";
    $r "/(?i)^{$r}\@{$r}\.[a-z]{2,6}$/";
    return 
    preg_match($r$m);
    }
    // la funzione rende TRUE/FALSE
    $mail "amoil@php.net";

    if(
    checkMail($mail) ) {
    echo 
    "I dati corretti.";



    else { echo 
    "email non corretta riprova"

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    125
    Non funziona ancora, non so perché non vede il controllo. Blocca solo la form se è vuota ma non se è errato l'indirizzo mail
    :tongue:

  4. #4
    Originariamente inviato da stefano3804
    guarda l'espressione regolare di andr3a
    ... magari chiudere qualche parentesi graffa a volte??
    .: Teju.it - Una vita da raccontare
    .: 8s8.it - Wordpress gratis per tutti
    .: Vado.li - Accorcia URL

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    125
    non è un problema di graffe, anche perchè, devo passare le variabili al file 3.php, quindi ho dovuto modificarla per le mie esigenze l'ultima parte del codice.
    :tongue:

  6. #6
    Originariamente inviato da california
    non è un problema di graffe, anche perchè, devo passare le variabili al file 3.php, quindi ho dovuto modificarla per le mie esigenze l'ultima parte del codice.
    No, lo so che non sono le graffe il problema, però era una precisazione che ci stava!
    Non ne so molto di espressioni regolari, ma non mi pare cosa buona e giusta assegnare due differenti valori alla variabile $r senza prima fare qualcosa...
    Non è che deve essere una cosa tipo:
    codice:
    $r = "([a-z0-9]+[._-]?){1,3}([a-z0-9])*"; 
    if(preg_match($r, $m))
    {
    $r = "/(?i)^{$r}@{$r}.[a-z]{2,6}$/"; 
    return preg_match($r, $m);
    }
    else
    return FALSE;
    magari ho scritto una cacata, ma appunto, mi stona vedere la variabile $r con 2 assegnazioni consecutive senza alcuna operazione in mezzo!
    .: Teju.it - Una vita da raccontare
    .: 8s8.it - Wordpress gratis per tutti
    .: Vado.li - Accorcia URL

  7. #7
    si mi ero dimenticato la graffa in fondo

    ma ti assicuro che questa funziona benone

    ll'ho riprovata ora

    Codice PHP:
    function checkMail$m ) { 
    //Script di Andr3a 
    $r "([a-z0-9]+[._-]?){1,3}([a-z0-9])*"
    $r "/(?i)^{$r}@{$r}.[a-z]{2,6}$/"
    return 
    preg_match($r$m); 

    // la funzione rende TRUE/FALSE 
    $mail "amoil@php.net"

    if(
    checkMail($mail) ) { 
    echo 
    "I dati corretti."


  8. #8
    Originariamente inviato da stefano3804
    si mi ero dimenticato la graffa in fondo

    ma ti assicuro che questa funziona benone

    ll'ho riprovata ora

    Codice PHP:
    function checkMail$m ) { 
    //Script di Andr3a 
    $r "([a-z0-9]+[._-]?){1,3}([a-z0-9])*"
    $r "/(?i)^{$r}@{$r}.[a-z]{2,6}$/"
    return 
    preg_match($r$m); 

    // la funzione rende TRUE/FALSE 
    $mail "amoil@php.net"

    if(
    checkMail($mail) ) { 
    echo 
    "I dati corretti."

    Hai ragione, l'ho provata anch'io e funziona alla grande!
    Non avevo notato prima che la seconda assegnazione di $r richiama al suo interno la prima assegnazione di $r!
    Dunque sì, funziona alla grande!!
    .: Teju.it - Una vita da raccontare
    .: 8s8.it - Wordpress gratis per tutti
    .: Vado.li - Accorcia URL

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    125
    Credo che tu non abbia scritto una .... ma credo di essere io a non riuscire a riadattarla bene al mio scopo
    :tongue:

  10. #10
    Originariamente inviato da california
    credo di essere io a non riuscire a riadattarla bene al mio scopo
    cosa non riesci a fare allora? La funzione funziona , poi usala quando ti serve...
    .: Teju.it - Una vita da raccontare
    .: 8s8.it - Wordpress gratis per tutti
    .: Vado.li - Accorcia URL

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 © 2025 vBulletin Solutions, Inc. All rights reserved.