Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 14 su 14
  1. #11
    il client inserisce dei dati che il server riceve in formato ASCII ...
    ma questo non è controllato dall'attributo accept-charset?
    cambia qualcosa se il client che scrive in un form ha windows o linux?
    se in un form metto è nello script mi ritrovo "è" (che sarebbe ascii?) oppure "è" ?
    non riesco proprio a raccapezzarmi...

  2. #12
    si si ... ma io ti parlo a livello di comunicazione tra client e server
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  3. #13
    Eppure io così ho risolto proprio il problema...
    Non so che dirti... mi sembra strano..

    Sai se invece esiste un modo per cambiare provvisoriamente in una pagina il charset?

    Ad esempio un attributo di un div o un oggetto?

  4. #14
    Oggi sono incappato nello stesso problema.
    I tag di apertura e la DTD usati sono i seguenti.

    codice:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="it">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    (..)
    </head>
    Ovviamente tutta la pagina è servita dal server in utf8 tramite

    codice:
    mb_http_output("UTF-8");
    ob_start("mb_output_handler");
    Fino a qui nessun problema.
    Tutto funziona regolarmente.

    Il problema (stranamente ) comincia con i form ed i caratteri particolari (°èòà ecc).

    Alla fine ho capito la causa di questo problema.

    Specificando <form accept-charset="ISO-8859-15" ... > il problema si risolveva e php riceveva e gestiva correttamente i valori di $_POST.

    Poteva andare bene così ma che fare se abbiamo caratteri non contenuti in ISO-8859-15 all'interno del form? Siamo costretti ad usare UTF-8.

    Praticamente quando la pagina è servita in UTF-8 il browser resistuisce POST e GET nello stesso formato, quindi UTF-8.
    Php però non supporta "nativamente" UTF-8. A questo punto quando riceve i valori del post in UTF-8 li inserisce nell'array $_POST come fossero testo semplice (anche se sono UTF-8) e qui esce un bel casino, specialmente quando si mandano in output.

    Almeno da quanto ho capito si ottiene l'effetto di un utf8_encode(utf8_encode()) in fase di output...

    Ci si aspetta che, visto che l'argomento della prima utf8_encode è già UTF-8, non ci siano modifiche.
    Incece non è affatto così. E' assurdo ma l'UTF-8 viene nuovamente codificato in UTF-8 con i risultati che conosciamo bene..

    A quanto pare la soluzione è la decodifica dell'array POST ricevuto (o almeno dei dati prima di andare in output).

    Io uso questa funzione

    codice:
    function utf8_post_array() {
    	$A = Array();
    	foreach($_POST as $idx => $value) $A[utf8_decode($idx)]=utf8_decode($value);
    	return $A;
    }
    Con i nostri caratteri (anche quelli speciali) questa soluzione funziona perfettamente. Tuttavia non essendo sicuro che il procedimento di encoding/decoding sia invertibile non me la sento di garantirlo anche per caratteri cinesi/giapponesi/marziani/divini
    Lungo le due rive del fiume gelato si stendeva la cupa e tetra foresta di abeti, dai quali il vento aveva appena spazzato il manto di brina. Nella luce crepuscolare quegli abeti neri e sinistri sembravano inclinarsi l'uno verso l'altro. Un silenzio minaccioso incombeva sul paesaggio, privo di qualsiasi segno di vita o di movimento, e desolato e freddo al punto da non poter ispirare che un solo sentimento: quello della più triste malinconia. E nello stesso tempo pareva che da quel paesaggio trapelasse una specie di riso, un riso ben più spaventoso di qualsiasi malinconia o tristezza, un riso tragico, come quello di una sfinge, un riso agghiacciante più della brina e che rammendava l'incombere minaccioso dell'ineluttabile. Era la saggezza potente e impenetrabile dell'eternità che irrideva alla vita, alla sua futilità e agli sforzi degli uomini.

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.