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

    Espressione regolare, accenti e UTF-8

    Ciao!
    Sono alle prese con UTF-8 e mi succede un bel casino. Tutte le mie pagine le ho sistemate con questa codifica, attraverso l'apposito tag.
    Passo una stringa di testo con una serie di "é" (lettera accentata) in un form, il quale spedisce il tutto ad un'espressione regolare affinchè mi lasci utilizzare questo tipo di carattere, dopo aver ottimizzato tutto con ucword e trim.
    Però qui inizia il problema, perchè nella mia espressione regolare ho scritto semplicemente "é" ma credo che il form mandi la lettera in un'altra forma (UTF-8, appunto), dunque NON viene riconosciuta.
    Leggendo inoltre ho scoperto che ucword e trim fanno casini con le codifiche.

    Voi di solito come risolvete questo conflitto?

  2. #2
    Utente bannato L'avatar di Illustre
    Registrato dal
    Apr 2007
    Messaggi
    11

    espressione regolare

    puoi postare il codice di riferimento ?

  3. #3
    Volentieri, eccolo qui di seguito:

    Form che manda i dati, semplificato ai minimi termini (in alto, nel tag html ho specificato che uso utf-8):
    codice:
    <form action="..." method="post" >		
    <input type="text" name="titolo"></input>
    
    
    
    <input type="submit" value="continua"></p>
    </form>
    E ora il php che verifica

    codice:
    if (preg_match("/^[a-z0-9àèéìòù'\"]+$/i",ucwords(trim($_POST['titolo'])))) {
     //tutto ok
    }
    else //errore, ci devono essere solo quei caratteri, tra cui gli accentati
    Togliendo la codifica UTF-8 non si presentano più problemi.
    E non passo nemmeno da un database!

  4. #4
    Utente bannato L'avatar di Illustre
    Registrato dal
    Apr 2007
    Messaggi
    11
    hai specificato questo nel tag ?

    <meta http-equiv="content-type" content="text/html; charset=utf-8" />

  5. #5
    sìsì, nel tag html, prima linea!
    Ma a voi non succede nulla di simile?
    Sto facendo il test con Opera ultima versione...

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.