Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2010
    residenza
    Cagliari
    Messaggi
    198

    Url cliccato mediante js distorce successiva visualizzazione caratteri

    Considerando che nella mia pagina principale ho bisogno di usare js su un url cliccabile per far sì che i visitatori vengano scissi nell'url di destinazione tra coloro che navigano mediante computer e quelli mobile, ho bisogno di sistemare una conseguenza derivante da questo aspetto...

    A causa del codice js, le informazioni che passo mediante l'url ...pagina.php?informazione=XXX vengono distorte nella loro visualizzazione sulla pagina di arrivo ogni volta che sono presenti lettere accentate o caratteri particolari.

    Per ovviare al problema sto provando ad utilizzare la funzione url encode, ma vorrei che mi deste una piccola mano sul passaggio finale, dove l'url decode che ho impostato, non funziona, e non riesco a capire come mai...

    Premesso che sto usando wordpress...

    Nella pagina header.php ho inserito:
    in alto...
    <?php $blablabla = get_post_meta($post->ID, 'mio_meta_dato', true); ?>
    sotto...
    <a ref="http://miosito.com/ok.php?informazione=<?php echo urlencode($blablabla) ?>Link</a>

    ...e fin qui tutto okay...
    Infine nella destination_page.php ho inserito:
    <?php $blablabla = urldecode($_GET['informazione']); ?>

    Ma quest'ultimissimo passaggio non funziona.
    Potreste gentilmente darmi qualche dritta?
    Grazie in anticipo

  2. #2
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    non vedo nessi con js ti mando in php
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2002
    residenza
    Brescia
    Messaggi
    81
    urlencode() va bene, ma nella lettura dovrebbe bastare

    <?php $blablabla = $_GET['informazione']; ?>

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2010
    residenza
    Cagliari
    Messaggi
    198
    Quote Originariamente inviata da autsel Visualizza il messaggio
    urlencode() va bene, ma nella lettura dovrebbe bastare

    <?php $blablabla = $_GET['informazione']; ?>
    Purtroppo non va neppure così

  5. #5
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Puoi spiegare "non funziona"? In che modo non funziona? Hai un errore? Il parametro recuperato è in forma incorretta?
    Se non spieghi non ti si può aiutare.

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2010
    residenza
    Cagliari
    Messaggi
    198
    Chiedo scusa, forse non mi sono spiegato bene...

    Che la stringa sia presente o meno nella destination page, il risultato è sempre lo stesso, con l'informazione displayed a caratteri distorti.

    Ho provato in mille modi...
    <?php $blablabla = $_GET['informazione']; ?>
    <?php $blablabla = echo $_GET['informazione']; ?>
    <?php echo $_GET['informazione'] ?>
    <?php $blablabla = urldecode($_GET['informazione']); ?>
    <?php $blablabla = echo urldecode($_GET['informazione']); ?>
    <?php echo $_GET ($blablabla) ; ?>
    e altre combinazioni...
    Ma il risultato è sempre lo stesso, cioè se l'informazione tramandata è "Je suis été", ottengo sempre e comunque "Je suis été" sulla pagina di destinazione.
    Ultima modifica di danielepalmas88; 29-09-2016 a 16:30

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2016
    Messaggi
    783
    Assicurati di avere gli ecnoding allineati, i file php dovrebbero essere tutti in utf-8 senza bom e anche nell'html che generi dovrebbe essere forzato l'encoding in utf-8

  8. #8
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Quote Originariamente inviata da danielepalmas88 Visualizza il messaggio
    Chiedo scusa, forse non mi sono spiegato bene...

    Che la stringa sia presente o meno nella destination page, il risultato è sempre lo stesso, con l'informazione displayed a caratteri distorti.

    Ho provato in mille modi...
    <?php $blablabla = $_GET['informazione']; ?>
    <?php $blablabla = echo $_GET['informazione']; ?>
    <?php echo $_GET['informazione'] ?>
    <?php $blablabla = urldecode($_GET['informazione']); ?>
    <?php $blablabla = echo urldecode($_GET['informazione']); ?>
    <?php echo $_GET ($blablabla) ; ?>
    e altre combinazioni...
    Ma il risultato è sempre lo stesso, cioè se l'informazione tramandata è "Je suis été", ottengo sempre e comunque "Je suis été" sulla pagina di destinazione.
    Leggi il mio link in firma sui caratteri strani.

  9. #9
    Utente di HTML.it
    Registrato dal
    Nov 2010
    residenza
    Cagliari
    Messaggi
    198
    Grazie mille, problema risolto

    La destination page che avevo impostato aveva charset=iso-8859-1, mentre il mio wordpress aveva il wp-config.php impostato ad utf-8.
    Essendo un abitudinario avevo creato la destination page con una versione vecchissima di FrontPage che utilizzo nella mia macchina virtuale per comodità, perché è veloce e rapido...ma mai avrei pensato che potesse darmi problemi di questo genere con la codifica dei caratteri...!

    Ad ogni modo grazie mille per i preziosi aiuti!
    Buona giornata e buon fine settimana a tutti! ^_^

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.