Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di henry78
    Registrato dal
    May 2001
    Messaggi
    1,264

    Trattare stringhe di testo "sporche"...

    ciao a tutti

    mi ritrovo con dei testi salvati su mysql fatti all'incirca così:

    un\\\'azienda agricola biologica dove l\\\'allevamento di animali si alterna alle coltivazioni di cereali, frutteti ed oliveti.\r\n\r\nl\\\'azienda

    che funzione posso applicargli per vederli correttamente quando li visualizzo su una pagina php?

    altro problema lo sto avendo con i caratteri speciali (éàèì € ecc) .. firefox mi visualizza al loro posto un punto interrogativo... eppure il charset è utf-8...

  2. #2
    Utente di HTML.it L'avatar di henry78
    Registrato dal
    May 2001
    Messaggi
    1,264

    Re: Trattare stringhe di testo "sporche"...

    Originariamente inviato da henry78
    ciao a tutti

    mi ritrovo con dei testi salvati su mysql fatti all'incirca così:

    un\\\'azienda agricola biologica dove l\\\'allevamento di animali si alterna alle coltivazioni di cereali, frutteti ed oliveti.\r\n\r\nl\\\'azienda

    che funzione posso applicargli per vederli correttamente quando li visualizzo su una pagina php?

    altro problema lo sto avendo con i caratteri speciali (éàèì € ecc) .. firefox mi visualizza al loro posto un punto interrogativo... eppure il charset è utf-8...
    nessuno riesce ad aiutarmi??

    forse sbaglio quando le memorizzo nel db?

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    12
    Ti consiglio di filtrare le info da mettere sul db con htmlentities($stringa, ENT_QUOTES); in questo modo ti trovi le entità html delle lettere accentate degli apostrofi etc, così da non avere mai problemi di visualizzazione con quei caratteri.

    Tuttavia per risolvere quel problema con i backlash puoi usare la funzione stripslashes() non appena hai letto le info.


  4. #4
    Utente di HTML.it L'avatar di henry78
    Registrato dal
    May 2001
    Messaggi
    1,264
    Originariamente inviato da blancks
    Ti consiglio di filtrare le info da mettere sul db con htmlentities($stringa, ENT_QUOTES); in questo modo ti trovi le entità html delle lettere accentate degli apostrofi etc, così da non avere mai problemi di visualizzazione con quei caratteri.

    Tuttavia per risolvere quel problema con i backlash puoi usare la funzione stripslashes() non appena hai letto le info.

    grazie 1000

    ok così:
    $tipo = (ucfirst(strip_tags(htmlentities($tipo, ENT_QUOTES))));

    ps (sto sicuro anche contro le injection query ?)

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2009
    Messaggi
    12
    Originariamente inviato da henry78
    grazie 1000

    ok così:
    $tipo = (ucfirst(strip_tags(htmlentities($tipo, ENT_QUOTES))));

    ps (sto sicuro anche contro le injection query ?)
    Codice PHP:
    $tipo htmlentities($tipoENT_QUOTES);  // con questo è inutile fare lo strip_tags


    $sql "Insert Into Tabella ('$tipo', etc etc... ) "

    Si, sei sicuro anche dalle injection perchè ti vengono filtrati apici, quote ed altri caratteri speciali con la quale è possibile ottenere una injection.

    Altrimenti, tornando al caso in cui non vuoi modificare la stringa in fase di scrittura, e sistemare il tutto per l'output..

    Codice PHP:

    $sql 
    "Select tipo, bla bla bla";


    $tipo htmlentities(stripslashes($row['tipo']), ENT_QUOTES);  // togli via i backlash e rimpiazzi le entità.


    echo $tipo;  // avendo a questo punto, ad esempio, &agrave al posto delle à, il browser legge le entità html e le visualizzerà sempre bene, indipendentemente dalla codifica impiegata. 

  6. #6
    Utente di HTML.it L'avatar di henry78
    Registrato dal
    May 2001
    Messaggi
    1,264
    Originariamente inviato da blancks
    Codice PHP:
    $tipo htmlentities($tipoENT_QUOTES);  // con questo è inutile fare lo strip_tags


    $sql "Insert Into Tabella ('$tipo', etc etc... ) "

    Si, sei sicuro anche dalle injection perchè ti vengono filtrati apici, quote ed altri caratteri speciali con la quale è possibile ottenere una injection.

    Altrimenti, tornando al caso in cui non vuoi modificare la stringa in fase di scrittura, e sistemare il tutto per l'output..

    Codice PHP:

    $sql 
    "Select tipo, bla bla bla";


    $tipo htmlentities(stripslashes($row['tipo']), ENT_QUOTES);  // togli via i backlash e rimpiazzi le entità.


    echo $tipo;  // avendo a questo punto, ad esempio, &agrave al posto delle à, il browser legge le entità html e le visualizzerà sempre bene, indipendentemente dalla codifica impiegata. 
    sei stato gentilissimo!

  7. #7
    Utente di HTML.it L'avatar di henry78
    Registrato dal
    May 2001
    Messaggi
    1,264
    però facendo così, mi stampa a video i caratteri così:

    &-egrave; l-&#-039; ecc

    comincio a non capirci più nulla

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.