![]() |
![]() |
|
| Condividi questo contenuto nei Social Network: |
|
Tweet |
|
|
|
Ti stiamo aspettando: Registrati subito e gratis. Entra a far parte di una delle comunità più attive in Italia. Se hai dimenticato i tuoi dati li puoi recuperare subito. |
||||
|
|||||||||
Hey Amico Visitatore, Condividi con noi le tue idee e la tua conoscenza Aprendo una nuova discussione nella sezione Mod Rewrite e Tecniche di URL Redirect |
|
|
LinkBack | Strumenti di discussione |
|
|
#1 (permalink) |
|
User
|
Mod Rewrite in puro asp senza componenti per aruba
Sono un programmatore e volevo condividere una porzione di codice utile per tutti quelli che utilizzano spazi web non gestibili da server tipo aruba e altri.
Volevo condividere il codice che nello specifico fà questo: effettua una chiamata tramite XMLHTTP, se tutto va bene e la pagina restituisce lo stato 200 immagazzina il contenuto in una variabile (per contenuto intendo il codice html nella sua totalità) e crea fisicamente un file html. Per fare questo ho creato due funzioni che lavorano tra loro, quindi facilmente utilizzabili. Per la creazione del file in principio avevo utilizzato il componete fso, ma ho dovuto sostituirlo con ADODB.Stream, visto che il primo era poco perfommante e tra la chiamata con la prima funzione e la seconda non riusciva a memorizzare la variabile. Codice HTML:
<!--METADATA TYPE="typelib" UUID="00000205-0000-0010-8000-00AA006D2EA4" NAME="ADODB Type Library" --> <% call SaveFile("/ewe.htm",geturl("qui và la pagina da richiamare")) Function GetUrl(Url) Dim Http Set Http = Server.CreateObject("Microsoft.XMLHTTP") Http.open "GET",Url,False Http.Send() GetUrl = Http.ResponseText Set Http=Nothing End Function Function SaveFile(PathFile,Content) Set oStream = Server.CreateObject("ADODB.Stream") oStream.Open oStream.Charset = "ascii" oStream.Type = adTypeText oStream.WriteText Content oStream.SaveToFile Server.MapPath("/public"&PathFile) , adSaveCreateOverWrite oStream.Close set oStream = Nothing End Function %> ![]() |
|
|
|
|
|
|
|
#3 (permalink) |
|
User
|
Grazie a voi,
io queste due funzioni le uso agganciandole ad eventuali variabili prese da db es. mettendo queste funzioni in una eventuale pagina che processa i dati per l'inserimento in un db prelevo il nome del pulsante creato e lo metto al posto (qui record&".htm"). per richiamare tale funzione o si usa: <% call SaveFile("/ewe.htm",geturl("qui và la pagina da richiamare")) %> oppure <%=geturl("qui và la pagina da richiamare")%> il tutto avviene in autoamtico. Un mio scenario classico è creazione di pulsante es. Hotel a Cattolica funzione che converte e bonifica il nome, sostituendo spazi e carateri speciali e con il nome del pulsante creazione fisica della pagina cioè: public/Hotel-a-Cattolica.htm se necessita vi posto anche la terza funzione che automatizza la creazione del nome della pagina |
|
|
|
|
|
#4 (permalink) |
|
User
Data di registrazione: May 2006
Messaggi: 73
|
Non sarebbe male! Posta posta
|
|
__________________
Fidejussioni e cauzioni Ultima modifica di Leonov : 25-06-10 15:54. Motivo: Maiuscola. ;-) |
|
|
|
|
|
|
#5 (permalink) |
|
User
|
Le altre due funzioni sono queste:
Codice:
<% Function NoHTML(Stringa) Set RegEx = New RegExp RegEx.Pattern = "<[^>]*>" RegEx.Global = True RegEx.IgnoreCase = True NoHTML = RegEx.Replace(Stringa, "") End Function Function unisci(testo, id) Risultato = testo Risultato = NoHTML(Risultato) Risultato = LCase(Risultato) Risultato = Replace(Risultato, " ", "-") Risultato = Replace(Risultato, "\", "-") Risultato = Replace(Risultato, "/", "-") Risultato = Replace(Risultato, ":", "-") Risultato = Replace(Risultato, "*", "-") Risultato = Replace(Risultato, "?", "-") Risultato = Replace(Risultato, "<", "-") Risultato = Replace(Risultato, ">", "-") Risultato = Replace(Risultato, "|", "-") Risultato = Replace(Risultato, """", "") Risultato = Replace(Risultato, "'", "-") Risultato = id & "-" & Risultato & ".asp" unisci = Risultato End Function%> Spero possano essere utili, Ciao Max |
|
Ultima modifica di Leonov : 25-06-10 15:53. Motivo: ;-) |
|
|
|
|
|
|
#6 (permalink) |
|
User
Data di registrazione: Feb 2009
Messaggi: 81
|
Ciao, la discussione è un po' vecchia ma mi interessa.
Scusa non capisco come riesci a fare un url rewrite, il codice che hai postato è chiaro, però se fai un pulsante che punta ad una pagina (tu fai l'esempio di Hotel-a-cattolica.htm) questa deve già esistere sul server e non può essere generata "al volo". Quindi, correggimi se sbaglio, le suddette pagine le crei prima tramite uno script automatizzato che legge parametri da un db e utilizza le funzioni che hai postato, giusto? Insomma se ho capito bene è un sistema più per creare mappe del sito piuttosto che un rewrite vero e proprio. Ciao e grazie. |
|
__________________
Vetrofanie ed adesivi |
|
|
|
|
|
|
#7 (permalink) |
|
User
|
Ho letto solo ora (scusate),
il mio codice crea la pagina fisicamente non bisogna metterle manualmente ecc... Non crea mappe ma decidi tu: htm html txt ecc... |
|
__________________
Only-web.net Massimo Cavalieri |
|
|
|
|
| Tags: aruba, asp, mod rewrite |
| Strumenti di discussione | |
|
|