Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    24

    Ajax e problema di codifica

    Salve,
    sto usando da poco l'ajax ma mi sono accorto di un problema serio.
    Se io faccio delle chiamate al db in php direttamente sulla pagina questo mi restituisce i dati con codifica giusta.
    Mentre se la stessa cosa la faccio in ajax ossia in una pagina faccio le chiamate ajax e nell'altra ho il codice php che restituisce i dati, questi difettano di molti errori di codifica sopratutto apostrofi e lettere accentate...

    Inoltre io ho degli articoli corredati di immagine. se questi li faccio recuperare dall'ajax la formattazione e la struttura non funziona e le immagini vanno dove vogliono.

    Ps: Uso mootools

  2. #2
    Secondo me devi mettere utf-8 in tutte le pagine interessate
    in modo che il codice javascript rappresenta il carattere con tutti gli 8 bit
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

    ciao

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    24
    se metto utf-8 mi mette i punti di domanda...
    ora il problema è solo con l'apostrofo...

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    35

    Re: Ajax e problema di codifica

    Originariamente inviato da Huvber
    ho il codice php che restituisce i dati, questi difettano di molti errori di codifica sopratutto apostrofi e lettere accentate...
    non ho capito bene il problema.

    se il ritorno da php devi visualizzarlo nel browser
    prova ad eseguire un htmlentities sulla stringa prima di mandarla al client
    htmlentities($strReturn, ENT_QUOTES);

    in base alle esigenze potrebbe esserti utile anche addslashes

    prova a postare il codice, magari ti so dire qualcosa di più

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    24
    già fatto non funziona
    ora ho scoperto che in realtà non è un apostrofo normale ma è ’
    se io metto quel codice nell'html normalmente me lo codifica... mentre se lo stesso carattere viene restituito dal php (quindi preso dall'ajax) ciò non accade e il carattere diventa illeggibile...
    Questo problema ce l'ho solo se uso ajax se metto il codice php che restiuisce le chiamate al db direttamente sulla pagina non ho nessun problema

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    24
    nessuno mi sa spiegare perchè se io la query la stampo direttamente non mi da nessun problema di codifica mentre se la richiamo con l'ajax mi da problemi?

  7. #7
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    L'oggetto XMLHTTP si aspetta in risposta una stringa ben formata in XML, ovvero con i caratteri "strani" convertiti in entita'.

    Quindi il problema e' lato server... ti sposto
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  8. #8
    Utente di HTML.it
    Registrato dal
    Jul 2007
    Messaggi
    24
    ok come faccio a convertirli in entità?

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.