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

    Javascript: Riconoscimento URL provenienza

    Questa discussione continua quella iniziata da me sul problema del vincolare l'accesso ad una pagina solo se si proviene da un determinato sito, chiusa per titolo troppo generico (non è stato capito che quella del titolo è stata solo una dimenticanza, e, nonostante ci avesse appassionato, è stata chiusa da Xinod senza possibilità di appello.... fa nulla).

    TrueLies, innanzitutto ti voglio ringraziare per il tuo aiuto.
    Dall'ultimo tuo suggerimento ho provato e va tutto ok.
    Però il problema non si è risolto perchè, se si accede alla pagina correttamente dal mio sito, poi nella pagina si legge l'URL.... basta fare un copia a quel punto e incollare in un nuovo browser ed il gioco è fatto..... la provenienza risulta quella corretta e quindi si aggira il tutto.
    Così quindi non risolvo.

    Che mi dici ancora? Altre idee e suggerimenti?

    Grazie in anticipo

  2. #2
    cioè spiega meglio quello che avresti fatto.

    Se la finestra non ha opener o sel la location dell' opener non è quella attesa, basta negare l'accesso.
    Come è che tu ritieni di avere aggirato la cosa?

    Da come la hai spiegata si capisce poco, se non che potrebbe dipendere dal tipo di validazione che fai sul pop up, che potrebbe non essere corretta o integrale.

  3. #3
    bah ho appena provato a fare quello che tu dici, se non ho male inteso:

    lancio la pop up
    nella pop up controllo l'opener.location.href
    copio l'indirizzo della pop up
    lo incollo in una altra tabulazione del browser

    risultato: nel secondo caso ovviamente non legge alcuna location dell' oggetto opener.

    O spieghi meglio che problema riscontri, o avrai qualche altro tipo di problema che non è quello che pensavi te.
    Se il problema è quello che diecevi te, cioè di essere sicuri che l'accesso alla pagina non avvenga se non è lanciata da un click dalla pagina di origine, opener.location.href fa quello che deve fare.

    poi certo, nel caso opener non ci sia o non vi sia la location attesa dell' opener, qualcosa nello script della pop up che gli dica di negare i contenuti ce lo devi pur mettere...

    può essere un redierct alla pagina di origine o un document.write che cancella tutto

  4. #4
    Ok ora spiego tutto.
    Ho fatto delle modifiche perchè in realtà in molte pagine del sito c'è il link alla pagina incriminata, in cui fare il controllo sulla provenienza, ed inoltre, sono molte le pagine cui si deve poter accedere solo tramite il sito.
    Ho allora pensato di non confrontare la provenienza con l'intero URL rilevato perchè questo avrebbe comportato indagare su molti URL proprio perchè da molte pagine si accede al popup tramite link.
    Allora il confronto lo faccio semplicemente cercando all'interno dell' URL la presenza di www.ilmiosito.it che dovrebbe esserci sempre.
    Il controllo funziona correttamente e si comporta esattamente come deve, ossia se non trova www.ilmiosito.it all'interno della URL indagata chiude il popup.
    Tutto ok.
    Però, una volta che entro correttamente dal sito, nella finestra vedo nella barra dove è presente l' URL l' intero percorso.... lo copio e lo incollo in un nuovo task del browser.... ed entro nella pagina direttamente.
    Spero di essermi spiegato.

  5. #5
    e per forza: abiliti la validità di tutto il dominio

  6. #6
    fai una array associativa con tutti i document.href abilitati, se abiliti tutto il dominio abiliti tutto (per quanto in realtà è ancora poco chiaro: in assenza di un opener dovresti dare errore, non SOLO in assenza di una location corretta)

    var ammessi={'http://foo.com/pagina1.html':1, 'http://foo.com/pagina2.php': 1} //eccetera

    a quel punto controlli che

    if(opener && ammessi[opener.location.href] )

  7. #7
    beh certo così si... ma non sono ancora pratico in questo... ho sempre scritto lato server

  8. #8
    puoi dirmi come fare questo ciclo di controllo?

  9. #9
    Non è un ciclo, è una associativa: la leggi a colpo sicuro, esattamente come ti ho detto sopra.

    var ammessi={'http://foo.com/pagina1.html':1, 'http://foo.com/pagina2.php': 1} //eccetera

    e ci metti al posto di quelle href le href ammesse

    poi
    if(opener && ammessi[opener.location.href] ){/*ok*/}
    else{/*chiudi*/}

    il tutto va nella pop up

  10. #10
    ... per capire..... ogni valore di confronto è seguito da :1 che vorrebbe dire vero... giusto? quindi se verificato tutto ok (ossia non faccio accadere nulla) else, chiudo

    beh, splendido come sistema.... dove posso documentarmi per le "associative" ?

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.