Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19
  1. #1
    Utente bannato
    Registrato dal
    Jan 2003
    Messaggi
    2,407

    link in campo memo di db [urgente]

    salve a tutti,

    io ho inserito dei testi in un campo memo del db e poi li ho fatti visualizzare ma i link e le caselle di posta elettronica non sono cliccabili apparendo invece come testo semplice...

    cosa devo fare per renderli cliccabili all'interno del campo memo?


    p.s. i testi li taglio da un file di doc....

    Grazie

  2. #2
    Utente di HTML.it L'avatar di 99eros9
    Registrato dal
    Jan 2003
    Messaggi
    2,637
    devi inserire anche i tag html
    Tala är silver men tiga är guld!
    Pubblica il tuo curriculum
    Segnala il tuo sito
    Ancl

  3. #3
    Devi usare una funzione che identifichi gli URL e le mail all'interno della stringa presente nel campo, ma all'atto dell'inserimento.

    Io uso questa:

    codice:
    'nuovo
    Dim intInizio, strProt' variabili globali
    
    ' routine trovaInizio
    ' determina l'inizio dell'url
    ' riceve da formatUrl stringa (stringa input) e inizio (inizio della ricerca)
    ' restituisce intInizio (inizio url) e strProt (prefisso da anteporre per costruire l'url se mancante)
    Sub trovaInizio(stringa, inizio)
       Dim intHttp, intWww, intMail, intSpazio, intEnter, intFtp, intNews
       strProt = ""	' azzera la stringa del protocollo  
       intHttp = inStr(inizio, stringa, "http://")		' determina posizione http://
       intWww = inStr(inizio, stringa, "www.")			' determina posizione www.
       intMail = inStr(inizio, stringa, "@")			' determina posizione chiocciola
       If intMail > 0 Then	   ' se c'è una chiocciola
          intSpazio = inStrRev(stringa, " ", intMail) + 1 ' determina posizione spazio prima della chiocciola
          intEnter = inStrRev(stringa, Chr(13), intMail) + 1		  'determina posizione ritorno a capo prima della chiocciola
          If intSpazio > intEnter Then ' determina inizio effettivo dell'indirizzo email 
    	 intMail = intSpazio
          Else
    	 intMail = intEnter
          End If
       End If
       intFtp = inStr(inizio, stringa, "ftp://")   ' determina posizione ftp://
       intNews = inStr(inizio, stringa, "news://")   ' determina posizione news://     
       If intHttp = 0 Or (intWww > 0 And intHttp > intWww) Then			 ' determina inizio indirizzo http: se non c'è http è la posizione di www.
          intInizio = intWww
          strProt = "http://"	 ' e allora aggiunge il protocollo per costruire il link
       Else		  ' altrimenti e' quella di http
          intInizio = intHttp
       End If
       If intMail > 0 And (intInizio = 0 Or intInizio > intMail) Then	  ' determina inizio del primo indirizzo nella stringa
          intInizio = intMail		' mail
          strProt = "mailto:"		' aggiunge protocollo
       End If
       If intFtp > 0 And (intInizio = 0 Or intInizio > intFtp) Then 
          intInizio = intFtp	   ' ftp
          strProt = ""			   ' azzera protocollo
       End If
       If intNews > 0 And (intInizio = 0 Or intInizio >= intNews) Then 
          intInizio = intNews	   ' news
          strProt = ""			   ' azzera protocollo
       End If         
    End Sub
    
    ' funzione formatUrl
    ' riceve input (stringa di input)
    ' restituisce strOutput (stringa con url convertiti)
    Function formatUrl(input)
       Dim arrCar, strOutput, intFine, cntConta, strUrl
       arrCar = Array(Chr(13), ",", ". ", ": ", ";", "!", "? ", "..") ' matrice con i caratteri possibili di fine url, escluso lo spazio di default
       strOutput = input	   ' stringa di output. Inizialmente è uguale a quella di input.
       input = input & " "	   ' aggiunge alla stringa di input uno spazio per gestire il caso in cui non vi siano altri caratteri dopo l'ultimo url
       trovaInizio input, 1	   ' trova inizio primo indirizzo
       Do While intInizio > 0  ' ciclo di controllo stringa input. Prosegue fino a che non ci sono più possibili url 
          intFine = inStr(intInizio, input, " ")	' determina posizione spazio dopo l'url
          For cntConta = 0 to Ubound(arrCar)  ' determina fine url effettiva controllando la presenza dei caratteri di fine url possibili
             If inStr(intInizio, input, arrCar(cntConta)) > 0 And intFine > inStr(intInizio, input, arrCar(cntConta)) Then intFine = inStr(intInizio, input, arrCar(cntConta))
          Next
          strUrl = Mid(input, intInizio, intFine - intInizio) ' estrae l'url
          strOutput = Replace(strOutput, strUrl, "" & strUrl & "")	  
    
    	  'inserisce il tag <a> nella stringa di output
          trovaInizio input, intFine	 ' trova inizio indirizzi successivi
       Loop
       formatUrl = strOutput
    End Function
    'fine nuovo
    Per visualizzare la stringa:

    codice:
    response.write(formatUrl(notizia))
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  4. #4
    Utente bannato
    Registrato dal
    Jan 2003
    Messaggi
    2,407
    Originariamente inviato da 99eros9
    devi inserire anche i tag html
    sarei spaventato dalla funzione di maximum...

    la tua soluzion quella dei tag è più diretta?
    me la potresti spiegare grazie!


  5. #5
    Ma che inserisci i tag a mano ad uno ad uno nel db???
    Metti che poi devi inserire un'altra stringa rifai il lavoro?

    La mia funzione è perfermante e non lo dico perchè la uso io, ma perchè è stata anche postata tempo fa qui sul forum.

    Ad ogni modo la scelta finale è la tua.
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  6. #6
    Utente bannato
    Registrato dal
    Jan 2003
    Messaggi
    2,407
    ok ora al di la che io utilizi la procedura di maximum o inserisca i tag manualmente..

    <a href="" class="nero" style="text-decoration:none">

    E' possibile fare in modo che il link assuma le proprietà del tag sopra scritto...?

    dove nero è una classe che prevede il link di colore nero in tutte le sue fasi quindi visitato, da visitare ecc...

    grazie

  7. #7
    Certo che è possibile, l'importante che la classe sia definita nel css.

    Nella funzione che ho postato su trovi questa stringa:

    codice:
    " & strUrl & "
    che altro non è quello che l'asp riproduce come html generato.
    Come vedi lo style si può prevedere.
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  8. #8
    Utente bannato
    Registrato dal
    Jan 2003
    Messaggi
    2,407
    ok maximum ora è più chiaro anche se....

    domanda 1: io prendo la tua classe e la copio fedelmente nella mia pagina?

    Domanda2: al fine di non avere lo style di sottolineatura del link e di potergli impostare i colori in base a questa classe che io ho in cima alla mia bella pagina:

    codice:
    <style type="text/css"> 
    .TuaTabella { background:#386ab3 url(background_top.jpg) no-repeat } 
    
    A:link.nero { color: #000000 }
    A:visited.nero { color: #000000 }
    A:hover.nero { color: #000000 }
    
    A:link.rosso { color: #900000 }
    A:visited.rosso { color: #900000 }
    A:hover.rosso { color: #900000 }
    
    </style>
    che modifico giusto perchè il codice che mi hai indicato mi è un attimo estraneo.... nel senso che io coi fogli di stile ho già poca confidenza e se non trovo il comando class="pippo" incomincio a perdermi.... idem per lo style... :master:

    Grazie

  9. #9
    Riguardo alla prima domanda, ti rispondo: SI!!!
    Copiala in testa alla pagina ASP tra gli opportuni tag <% %>

    Riguardo la seconda, ti direi di togliere il codice CSS dalla pagina e metterlo in un apposito file .css, che includerai nella o nelle tue pagine (se devi implementare lo stylesheet lo fai una volta e poi richiami solo le classi nella o nelle tue pagine, no?? ;-)).
    Chiaramente lo chiamerai pippo e nell'url che la funzione ti stamperà, scriverai la seguente:

    codice:
    " & strUrl & "
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  10. #10
    Utente bannato
    Registrato dal
    Jan 2003
    Messaggi
    2,407
    Originariamente inviato da maximum
    Riguardo alla prima domanda, ti rispondo: SI!!!
    Copiala in testa alla pagina ASP tra gli opportuni tag <% %>

    Riguardo la seconda, ti direi di togliere il codice CSS dalla pagina e metterlo in un apposito file .css, che includerai nella o nelle tue pagine (se devi implementare lo stylesheet lo fai una volta e poi richiami solo le classi nella o nelle tue pagine, no?? ;-)).
    Chiaramente lo chiamerai pippo e nell'url che la funzione ti stamperà, scriverai la seguente:

    codice:
    " & strUrl & "

    hai ragione il problema è che per ogni pagina c'è uno style differente quindi visto che alla fine sono una manciata di riche mi conveniva mettere lo style della pagina nella pagina che gli corrisponde...

    oltre a questo ora a modificare non mi passa più ormai l'ho inserito in tutte le pagine e sono già paregghie quelle che ho messo on-line quindi mettermi a creare un file css esterno si è facile ma andare a modificare ogni singolo file beh ti lascio immaginare...

    detto questo il codice che mi hai dato

    comunque credo che

    codice:
    " & strUrl & "
    è valido anche se la classe è interna alla pagina?
    E soprattutto sorry per l'ignoranza ma dove richiami il comando per eliminare la sottolineatura?

    Inoltre un consiglio io prendo il tuo codic e lo incollo nella pagina coi link nel db... ha importanza il dove incollarlo?

    Grazie

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.