Visualizzazione dei risultati da 1 a 3 su 3

Hybrid View

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2013
    Messaggi
    1

    Esepressioni regolari - Come fare?

    Buongiorno a tutti! Sono nuovo del forum!
    Vorrei che mi aiutaste a risolvere questo piccolo problema.

    In un sito che sto facendo ce un form mail nella pagina contatti. In questo form si trova una area di testo <textarea name="testo"></textarea> dove un cliente può scrivere e inviare la mail all'admin del sito.

    Ovviamente per i problemi continui di spam che sono sul web sono costretto a validare i campi input, e cosi prima di spedire faccio filtrare il contenuto del $_POST['testo'] da una funzione con un espressione regolare. Se quello che ritorna è identico al valore del post iniziale spedisco altrimenti qualcosa non va!

    Ecco il filtro:
    Codice PHP:
    if($filter == "textbox") {
            
    $input htmlspecialchars($input);
            
    $pattern "/^[A-Z a-z0-9-,!\.&%&agrave;&egrave;é&igrave;&ograve;&ugrave;]+$/";
            
    preg_match($pattern$input$match);
            return 
    $match[0];
        } 
    Nella fase di test il programma mi blocca l'invio se vengono inseriti degli "accapo - invio" nella textarea. Siccome so che gli "accapo" sono \r\n, come faccio ad indicare alla RegEx che quelli sono consentiti?

    Spero di essere stato chiaro, e spero in risposte altrettanto chiare!

    Grazie, Matteo.

  2. #2
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    Quote Originariamente inviata da inquota Visualizza il messaggio
    Buongiorno a tutti! Sono nuovo del forum!
    Vorrei che mi aiutaste a risolvere questo piccolo problema.

    In un sito che sto facendo ce un form mail nella pagina contatti. In questo form si trova una area di testo <textarea name="testo"></textarea> dove un cliente può scrivere e inviare la mail all'admin del sito.

    Ovviamente per i problemi continui di spam che sono sul web sono costretto a validare i campi input, e cosi prima di spedire faccio filtrare il contenuto del $_POST['testo'] da una funzione con un espressione regolare. Se quello che ritorna è identico al valore del post iniziale spedisco altrimenti qualcosa non va!

    Ecco il filtro:
    Codice PHP:
    if($filter == "textbox") {
            
    $input htmlspecialchars($input);
            
    $pattern "/^[A-Z a-z0-9-,!\.&%&agrave;&egrave;é&igrave;&ograve;&ugrave;]+$/";
            
    preg_match($pattern$input$match);
            return 
    $match[0];
        } 
    Nella fase di test il programma mi blocca l'invio se vengono inseriti degli "accapo - invio" nella textarea. Siccome so che gli "accapo" sono \r\n, come faccio ad indicare alla RegEx che quelli sono consentiti?

    Spero di essere stato chiaro, e spero in risposte altrettanto chiare!

    Grazie, Matteo.
    cioè?
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2013
    Messaggi
    228
    http://www.php.net/manual/it/referen....modifiers.php
    credo che questo al secondo punto faccia al caso tuo

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.