Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2001
    Messaggi
    62

    Sostituzione testo problematica

    Ho la necessità di sostituire tutti i link (tranne gli indirizzi mail) presenti in un testo con un nuovo link che contenga il link stesso come querystring, per monitorare i click degli utenti.

    Ad esempio se nel testo ho

    href="pagina.asp?par1=1&par2=2"

    devo trasformarlo in

    href="nuovapagina.asp?utente=10&link=pagina.asp?pa r1=1*and*par2=2"

    Se ci fosse un solo parametro basterebbe un replace, ma visto che i parametri possono essere molti devo trasformare la e commerciale in qualcosa d'altro (ad esempio *and*).

    Si possono usare le regular expression? Qualche esempio (io non le conosco)? O ci sono altre soluzioni?

    Grazie a chi mi voglia aiutare

  2. #2
    Per passare in queryString una url con, a sua volta, una queryString, devi fare la URLEncode della url (con queryString) da passare in queryString.
    In pratica, questa url pagina.asp?a=1&b=2 :

    pagina.asp
    codice:
    <%
    qString = request.serverVariables("QUERY_STRING")
    nuovaPagina = "nuovapagina.asp?utente=" & valoreID & "&link=" & server.URLEncode("pagina.asp?" & qString)
    response.redirect nuovaPagina
    %>

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2001
    Messaggi
    62
    Il problema non è esattamente questo.
    Io ho un campo di database che contiene testo HTML, e vari link.
    Questo testo viene inviato via mail agli utenti.
    Quando l'utente clicca su un link io devo registrare il click su una pagina intermedia e poi reindirizzare l'utente al link originario.
    Quindi devo sostituire tutti i link con un nuovo link...

  4. #4
    codice:
    valoreID = 10
    testo = "Clicca qui: vai e divertiti"
    
    testo = replace(testo,"href=""pagina.asp?","href=""nuovapagina.asp?utente=" & valoreID & "&link=pagina.asp?")
    response.write testo

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2001
    Messaggi
    62
    Ti ringrazio, ma forse mi sono spiegato male. Io non so quali siano i link dentro il testo. Potrebbero contenere qualunque cosa. In reltà io dovrei fare il replace, dentro tutto il testo, di quanto è contenuto tra "href=""http://" e la chiusura del link """". Quindi penso ci vogliano le regular expression.

  6. #6
    perché parli di *sostituzione*? se l'unica cosa che conservi è HTTP:// fai "http://" + quello che ti serve

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2001
    Messaggi
    62
    No, io devo sostituire quanto è contenuto tra "href=""http://" e la chiusura del link """" con server.urlendode di quel contenuto stesso, per mettere il link in una querystring.

  8. #8
    puoi fare un esempio? non capisco...

  9. #9
    Utente di HTML.it
    Registrato dal
    Jul 2001
    Messaggi
    62
    ho un link nel mio testo, un link qualunque che non conosco a priori, ad esempio

    href="pagina.asp?par1=1&par2=2"

    devo trasformarlo in

    href="nuovapagina.asp?utente=10&link=pagina.asp%3Fpar1%3D1%26par2%3D2 "

    devo cioè trasformare tutti i link (tranne quelli di posta elettronica) in un nuovo link che rimanda ad una pagina che ha il vecchio link in querystring (quindi con l'urlencode).

  10. #10
    la prima risposta di mems pare adeguata

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.