Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13

Discussione: $_GET in IE7

  1. #1

    $_GET in IE7

    E' nato un problema in IE7: in sintesi passo un valore accentato ad esempio "categoria=utilità"

    facendo il $_GET['categoria'] IE 7 sputa fuori "utilitÃ".

    Tutti gli altri browser invece riconosco "utilità".

    Come posso risolvere? Ho provato a fare l'encoding ma non risolvo mi esce sempre fuori "utilitÃ".

    Questo è il codice:

    Codice PHP:
    $categoria=$_GET['categoria'];         $categoria=str_replace("Ã","à",$categoria); 
    Questo è quello che sta nella barra degli indirizzi : /show_links.php?sez=links&categoria=Utilità

    Come vedete ho provato anche a fare il replace ma niente da fare.


    Soluzioni?

  2. #2
    direi che hai un problema con le codifiche ^^

    da qualche parte dici al browser di utilizzare UTF8 ^^

    controlla la configurazione del webserver o dello script
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  3. #3
    beh si tutte le pagine hanno come codifica UTF-8.

    Devo convertire tutto in ISO per farlo funzionare anche su IE?

  4. #4
    Originariamente inviato da JinKazama84
    beh si tutte le pagine hanno come codifica UTF-8.

    Devo convertire tutto in ISO per farlo funzionare anche su IE?
    è normale che ti arrivi quella roba li a php però gli manca un carattere successivamente alla Ã

    esegui qualche operazione di modifica di stringhe o simile sul testo ricevuto prima di stamparlo? anche un semplice renderlo maiuscolo o minuscolo disintegra tutto in questi casi
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  5. #5
    allora non ho ben capito :master:

    Codice PHP:
        foreach ($gals as $gal)
    {         
    $categoria=$_GET['categoria'];         
    if(
    $categoria== $gals[$count]['attrs']['CATEGORIA'])
    {         
    //array of replacement values for template             
    $gal_values = array($count+1$gals[$count]['attrs']['TITOLO'], $gals[$count]['attrs']['DESCRIZIONE'], $gals[$count]['attrs']['CATEGORIA'], $gals[$count]['attrs']['LINK']);         $gals_html .= str_replace($gal_vars$gal_values$template);         
    }
                      ++
    $count;     
    }     
    echo 
    $gals_html

    Come puoi vedere io faccio un controllo per vedere se la categoria è uguale ad uno che sta nella stringa per stampare.

    Firefox legge utilità e confronta utilità con i valori dell'array. IE invece legge utilità e confronta quello non trovando nessuna corrispondenza.

    Se firefox e gli altri browser vanno credo che il codice sia giusto. o no? :master:

  6. #6
    beh il problema non credo sia nel browser, è difficile, molto difficile.

    puoi fare qualche altra prova liscia, ovvero con delle pagine ad hoc dove inserisci i tuoi dati e fai i confronti necessari

    il problema potrebbe essere nell'str_replace

    mmm non è che tu le stringhe che vuoi cercare le tieni in qualche altra codifica?

    $gals come lo riempi?
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  7. #7
    allora lo str_replace l'ho provato adesso .. ma effettivamente nel codice originale non sta.

    $gal è un array fatto di testo letto da un xml.

    Comunque ho testato la pagina con vari browser e l'unico che da problemi e IE.

    Non capisco proprio..

  8. #8
    il file xml in cosa è codificato?

    perché se non lo hai codificato in utf8 il risultato è che succede roba strana
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  9. #9
    codificato in UTF-8 come tutto il resto

    Se fosse problema di codifica non dovevano dare problemi anche gli altri browser?

    Se vuoi allego i file così ci dai uno sguardo.

  10. #10
    Originariamente inviato da JinKazama84
    codificato in UTF-8 come tutto il resto

    Se fosse problema di codifica non dovevano dare problemi anche gli altri browser?

    Se vuoi allego i file così ci dai uno sguardo.
    ma la situazione è strana

    potrebbe anche essere che gli altri browser si accorgono del problema e si muovono di conseguenza mentre IE7 non lo fa

    detto questo prova a fare un semplice echo $_GET['....'] di quello che ricevi tramite i vari browser

    alternativamente prova a svuotare la cache
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

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.