Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    449

    Problemi di escape delle virgolette

    In un sito ho differenziato il meta tag <content>, solo che ci dev'essere
    un qualche piccolo errore di sintassi. Infatti se guardo
    il sorgente c'è una cosa che non mi convince.
    Io ho fatto così:
    ================================================== =
    $descriptions=array("home"=>"Materiali e recensioni sulle opere del filosofo
    italiano Giovanni Fornero dedicate a bioetica e
    laicita","recensione01"=>"Recensione di G. Vattimo a G. Fornero - \"Bioetica
    cattolica e bioetica laica\" su \"La Stampa\"","recensio..........
    ================================================== =
    e poi ho messo:
    ================================================== =
    <meta name="description" content="<?php echo $descriptions["$pagina"] ?>" />
    ================================================== =
    Però nel sorgente mi risulta:
    ================================================== =
    <meta name="description" content="Recensione di G. Vattimo a G.
    Fornero - "Bioetica cattolica e bioetica laica" su "La Stampa"" />
    ================================================== =
    con alcune parole vicino alle virgolette in rosso, il che mi fa pensare
    di aver "escapato" male qualcosa.

    Che ne dite?
    Grazie
    M.

  2. #2

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    449
    Però se sostituisco le virgolette escapate con &quot;
    e ricontrollo il sorgente della pagina adesso vedo:
    <meta name="description" content="Recensione di G. Vattimo a G. Fornero - &quot;Bioetica cattolica e bioetica laica&quot; su &quot;La Stampa&quot;" />
    cioè la stringa &quot; non interpretata,
    il che non è molto risolutivo...
    Ho commesso qualche altro errore?

    Grazie
    M.

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    449
    Ops, il codice viene interpretato per cui non si capisce.
    Fatto sta che se guardo il sorgente vedo, lo ripeto,
    la stringa & q u o t e ; non interpretata,
    e non gli apici doppi.

    M.

  5. #5
    Forse non sono riuscito a farmi capire. Per inserire un carattere che fa parte delle entità HTML all'interno di un attributo di un tag, DEVI inserirlo come entità HTML.

    Questo significa che DEVI applicare http://www.php.net/htmlentities o funzione equivalente.

    Se hai questi dubbi, ti consiglio di iniziare studiando l'HTML prima di passare al PHP.

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    449
    "Questa funzione è identica a htmlspecialchars() tranne che htmlentities()
    converte tutti i caratteri che hanno una corrispettiva entità HTML."
    Per cui questa funzione ha un'ampiezza di cui non necessito.
    Francamente, comincio a non capire nemmeno se il problema sussiste.
    Provo a riformularlo. Se guardo il sorgente di una pagina del sito,
    vedo del codice privo della "traduzione" del browser. Ad es:
    codice:
    1) che tale differenza esiste e si basa su due distinte concezioni del mondo, incarnate, rispettivamente, dalle dottrine della &ldquo;sacralit&agrave;&rdquo; e &ldquo;qualit&agrave;&rdquo; della vita e, pi&ugrave; in generale, dalle dottrine della &ldquo;indisponibilit&agrave;&rdquo; e &ldquo;disponibilit&agrave;&rdquo; della vita;</p>
    Se controllo altre parti degli headers, vedo:
    codice:
    <meta name="description" content="& q u o t ; Bioetica cattolica e bioetica laica & q u o t ; (B. Mondadori, 2005)" />
    Mi sto chiedendo se la presenza di & q u o t ; può rendere problematica l'indicizzazione o meno da parte dei motori di ricerca, ed eventualmente se c'è una soluzione...

    Grazie
    M.

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.