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

    problema lettura caratteri accentati da php

    Ciao a tutti, ho un problema e semplifico:
    ho una pag html con un bottone posto in una form, che mi deve xmettere di inserire + comuni in una tabella temporanea. Per farlo richiamo una pag di solo cod php, gli passo il nome del comune e questa effettua l'inserimento dopo aver controllato che il nome sia esatto.

    Il problema è che quando passo il comune alla pagina php questa non mi legge i caratteri accentati, ma mi prende dei caratteri strani.
    Ho provato a usare il str_replace e mi funziona x tutti tranne che x la 'à' che è identificata come 'Ã ', cioè ha uno spazio finale e quello non me lo toglie, ho provato ad usare di tutto.

    $string = str_replace("ì", "ì", $string);
    $string = str_replace("è", "è", $string);
    $string = str_replace("Ã ", "à", $string);
    $string = str_replace("ò", "ò", $string);
    $string = str_replace("ù", "ù", $string);
    $string = str_replace(' ', '', $string);
    $string = rtrim($string, " ");

    Penso il problema sia xchè non ho messo
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    ma nella pagina php non posso..

    Qualcuno ha qlc suggerimento da darmi???

  2. #2
    Il tuo e` un tipico problema di encoding.

    1) Identifica il tuo encoding

    Codice PHP:
    <?php
    echo md_detect_encoding($string);
    ?>
    poi vedi le funzioni utf8_decode e utf8_encode che permettono di passare da UTF-8 a ISO-8859-1 e viceversa.

    Puoi anche dare un'occhiata alla teoria:
    http://www.openclose.it/utf8_to_html.do
    Are you alive?
    No, but I was written with LOVE. A new scripting language.
    www.frequenze.it

  3. #3
    guarda, convertire da e a contenuti in UTF8 può essere utile solo per effettuare i controlli perché se il database si imposta in formato UTF8 cosi come la pagina html non serve effettuare operazioni per la conservazione dei dati
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  4. #4
    GRAZIE MILLE!!
    ero davvero incasinata e non sapevo come fare, non sapete x quanto tempo ho sclerato!!

    Ora ho messo "$string = utf8_decode($string);" e funziona a meraviglia!!


  5. #5
    Ok, significa che tu lavori in un ambiente ISO-8859-1 e ricevi un input in UTF-8.
    Are you alive?
    No, but I was written with LOVE. A new scripting language.
    www.frequenze.it

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.