Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    188

    voci di array come GET in URL

    ho un array normalissimo che mi contiene dei valori che devo passare per GET in URL.

    $esempio = array("esempio" => "voce 1", "esempio2" => "voce2");

    devo fare quindi una url così: http://ciccio.it/pagina.php?esempio=...esempio2=voce2

    per trasformare le voci in array in modo tale da includerle nell'URL ho fatto:

    Codice PHP:
    foreach ( $esempio as $chiave => $valore )
                {
                    
    $pairs[] = "$chiave=".urlencode($valore);
                }

                
    $risultato join('&',$pairs);
                unset(
    $pairs); 
    facendo però echo"$risultato"

    tutti gli spazzi al posto del classico %20, hanno un + quindi per esempio mi scrive esempio=voce+1

    immagino che se dovessi passare una URL così, mi succederebbe un macello poichè i + verrebbero presi come tali, mentre i %20 essendo un errore, la pagina di destinazione andrebbe ad interpretarli diversamente. Come risolvo il problema?? avete idee?

  2. #2
    Utente di HTML.it L'avatar di sotoli
    Registrato dal
    Mar 2008
    Messaggi
    150
    Ciao....prova a guardare la funzione htmlspecialchars.

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2005
    Messaggi
    188
    ho fatto un replace sui + così:

    $target = str_replace('+' , '%20' , $risultato);

    tt ok, i + sono diventati %20 hehe, ci ho pensato dopo....

  4. #4
    Utente di HTML.it L'avatar di sotoli
    Registrato dal
    Mar 2008
    Messaggi
    150
    Dai comunque un'occhiata a quella funzione...ti può tornare utile anche in presenza di altri caratteri particolari (',<,>).

  5. #5

    Re: voci di array come GET in URL

    Originariamente inviato da agmama
    immagino che se dovessi passare una URL così, mi succederebbe un macello poichè i + verrebbero presi come tali, mentre i %20 essendo un errore, la pagina di destinazione andrebbe ad interpretarli diversamente.
    Quarda che il risultato è corretto. Se non ne sei convinto prova ad utilizzare l'URL e poi a richiamare:

    Codice PHP:
    <?php print_r($_GET); ?>

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.