Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 21
  1. #1

    Prendere ancora# da indirizzo

    Salve, volevo sapere come è possibile prendere il valore di un'ancora dall'url, inoltre vorrei sapere se è possibile prendere solo tutto il valore o prenderne anche solo una parte, ad esempio:
    www.sito.it/prova.php#prova e www.sito.it/prova.php#prova=1.
    Come posso prendere nel pirmo caso prova e nel secondo solo il valore 1.
    Scusate ma non avevo mai usato le ancore, ma ajax mi ha costretto...

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131
    Precisiamo subito che le ancore non hanno valore possono essere testo, numeriche o testo + numeri (usato per renderle dinamiche vedi come esempio anche qui sul forum il permalink e formato dalla radice post+idthread) se le devi recupere lato server non puoi dato che non viene invia al server, per lato client location.hash poi la "smonti" con split
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it L'avatar di garakkio
    Registrato dal
    Dec 2011
    residenza
    Roma
    Messaggi
    480

    Re: Prendere ancora# da indirizzo

    Originariamente inviato da _Marco_87
    Salve, volevo sapere come è possibile prendere il valore di un'ancora dall'url, inoltre vorrei sapere se è possibile prendere solo tutto il valore o prenderne anche solo una parte, ad esempio:
    www.sito.it/prova.php#prova e www.sito.it/prova.php#prova=1.
    Come posso prendere nel pirmo caso prova e nel secondo solo il valore 1.
    Scusate ma non avevo mai usato le ancore, ma ajax mi ha costretto...
    Puoi usare questa funzione: http://it2.php.net/parse_url

  4. #4
    Grazie a entrambi, ho provato e funziona .

  5. #5
    Scusate ma sono costretto a ripostare:
    Codice PHP:
    var_dump($url['24']); 
    Così prendo il 24esimo valore dell'url, ad esempio 2, qundi dal link che finisce con #prova=2, riesco a prendere il 2 e ad usarlo, il problema è che non sò come prendere due valori, se il numero fosse 10 avrei la necessià di prendere 1 e 0. Ho provato in questo modo:
    codice:
    [(range('24', ''25))]; [('24', 25)]; [('24' '25')]; ecc
    Ma non funziona purtroppo. Avete una soluzione per prendere due caratteri?

  6. #6
    qual'è la url che devi parsare?

    hai visto l'esempio NUMERO 1 qui? http://it2.php.net/parse_url
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  7. #7
    Guardando il primo esempio mi era venuto in mente questo:
    Codice PHP:
    parse_url($urlPHP_URL_FRAGMENT)); 
    Così vedo solo il risultato dopo l'ancora, ovvero "prova=10", ma a me interessa solo il 10. Per questo avevo fatto nell'altro modo.
    Non sò come fare, perchè non mi è propio chiaro fino in fondo...

  8. #8
    Codice PHP:

    $arr
    =explode('=',$fragment);

    Print_r($arr); 
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

  9. #9
    Grazie per la dritta. ho sistemato così:
    Codice PHP:
    $a "<script>document.write(location.hash.substring(0));</script>";
    $url "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]$a";
    echo 
    $url;
    $fragment parse_url($urPHP_URL_FRAGMENT);
    $arr=explode('=',$fragment);
    $_SESSION['prova'] = $arr[1]; 
    Purtroppo c'è un problema, se ad posto del contenuto di $url metto un indirizzo web normale, compreso di ancora, funziona tutto correttamente; ma se invece lo scrivo come sopra si verifica una stranezza: nella 3a riga (echo $url) viene stampato tutto l'indirizzo(con tanto di ancora), quindi la pagina prende lo script teoricamente è giusto, ma poi quando lo passa a $fragment è come se perdesse l'ancora, e $_SESSION['prova'] divinte uguale a " ".....
    Se copio e incollo l'indirizzo e lo metto in $url al posto del contenuto attuale funziona tutto correttamente. Avevo pensato che php essendo più veloce di javascript creava un conflitto e lo script non si sarebbe mai visto, ma invece stampando $url prima di $fragment ho avuto la conferma che l'indirizzo preso è esatto, quindi il problema è di altro tipo e non sò come risolvere.


  10. #10
    guarda che quando cliccki su un'ancora mica refresha la pagina, quindi php non viene eseguito....
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

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 © 2024 vBulletin Solutions, Inc. All rights reserved.