Visualizzazione risultati 1 fino 7 di 7

Discussione: Problemi con lettere accentate nel nome delle cartelle

  1. #1
    Guest

    Predefinito Problemi con lettere accentate nel nome delle cartelle

    Ciao! Ho un problema... Ho creato una pagina php in cui una persona può creare una galleria fotografica e inserire all'interno delle foto. Nel server in sostanza viene creata una cartella con il nome della galleria e all'interno vengono messe tutte le foto appartenenti alla galleria. Fin qui nessun problema. Facendo un test però ho notato che se si da alla galleria un nome contenente una lettera accentata, la galleria non viene riconosciuta. E in aggiunta non può neanche essere rinominata o eliminata (sempre tramite codice php creato da me e che funziona con nomi senza lettere accentate). Lo stesso problema si presenta quando si caricano file con lettere accentate... Sto impazzendo cercando di risolvere questo problema... Ho pensato anche di mettere tutto nel database ma la cosa non mi convince... e in più dovrei rifare tutto da capo!

    Aiutatemi per favore!!

    Grazie mille

    Giacomo.

  2. #2
    Guest

    Predefinito

    La soluzione mi sembra ovvia: non permettere l'uso di caratteri "speciali", cioè tutti quelli che non siano alfanumerici, trattini e underscore.

    Puoi usare questa funzione per tagliare via tutti i caratteri non ammessi:

    Codice PHP:
    $string=preg_replace("/[^\w_-]/i","",$string);

    Ciao!

  3. #3
    Guest

    Predefinito

    Grazie per la tempestiva risposta! Comunque mi chiedevo se esistesse una soluzione che non sia quella di impedire l'uso delle lettere accentate...
    Specifico poi che il problema è solamente sulle lettere accentate (èòàùì), gli apostrofi vanno bene..

    Grazie!

  4. #4
    Guest

    Predefinito

    No, gli apostrofi non vanno bene, come non vanno bene tutti gli altri caratteri speciali.
    E no, non c'è un'altra soluzione, se non quella di sostituire le accentate con le rispettive lettere non accentate (è diventa e)


    Ciao!

  5. #5
    Guest

    Predefinito

    ok grazie mille.

    ciao!!!

  6. #6
    Guest

    Predefinito

    Forse dico una str***ata ma passare tutto con htmlspecialchars();?

  7. #7
    Guest

    Predefinito

    No, perchè restituisce il carattere & (e anche # a volte) che non è considerato come carattere consentito e può far nascere problemi.


    Ciao!

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •