Newsgroup: it.comp.www.asp
Titolo: Creazione dinamica di una pagina HTML tramite ASP a partire da un file .ini

Salve a tutto l'NG.
Ho un cruccio che non riesco a risolvere.
Ho un file .ini nel quale ho scritto:
[Colours]
BackGround=#000000
ForeGround=#FFFFFF
Table1BG=#808080
Table1Celle=#232323
Table1FG=#F0F0F0
Table2BG=#A0A0A0
Table2Celle=#666666
Table2FG=#F9F9F9
[Table1]
Val1-1="Riga1 Colonna1"
Val1-2="Riga1 Colonna2"
Val1-3="Riga1 Colonna3"
Val1-4="Riga1 Colonna4"
Val2-1="Riga2 Colonna1"
Val2-2="Riga2 Colonna2"
Val2-3="Riga2 Colonna3"
Val2-4="Riga2 Colonna4"
Val3-1="Riga3 Colonna1"
Val3-2="Riga3 Colonna2"
Val3-3="Riga3 Colonna3"
Val3-4="Riga3 Colonna4"
[Space]
[Table2]
Val1-1="Riga1 Colonna1 Sotto"
Val1-2="Riga1 Colonna2 Sotto"
Val1-3="Riga1 Colonna3 Sotto"
Val1-4="Riga1 Colonna4 Sotto"
Val2-1="Riga2 Colonna1 Sotto"
Val2-2="Riga2 Colonna2 Sotto"
Val2-3="Riga2 Colonna3 Sotto"
Val2-4="Riga2 Colonna4 Sotto"
Val3-1="Riga3 Colonna1 Sotto"
Val3-2="Riga3 Colonna2 Sotto"
Val3-3="Riga3 Colonna3 Sotto"
Val3-4="Riga3 Colonna4 Sotto"
[Title]
Titolo="Test File Reading and ASP coding"
;Fine file...
Da questo file voglio creare una pagina HTML con ASP, utilizzando i colori,
le tabelle, le celle ecc. del file .ini.
Non riesco a cavarne un ragno dal buco.
Qualcuno di voi può darmi una dritta?
Grazie

Non riesco a cavarne un ragno dal buco.
ovvero? come lo gestisci?
Ciao!
Davide
-- 
Volontario Anti-Troll (TM) 
SecurFaq: 
http://members.nbci.com/gouldukat/
DocTrolls: 
http://it.geocities.com/roccopapaleo/faq/italiano/Troll.html
Netiquette: 
http://www.inferentia.it/netiquette/dis.html

Grazie
E' possibile, ma non molto pratico, non č meglio se usi ad esempio un
foscio di stile esterno?
Cmq una soluzione puň essere questa se ho capito il problema...
in un file esterno imposti queste costanti
 const BackGround= 000000
 const ForeGround= FFFFFF
 const Table1BG= 808080
 const Table1Celle= 232323
poi includi il file nella pagina che ti serve e generi la pagina...
L'unico modo che mi viene in mente per usare un file .ini come dici te
č usando il "FSO", ma ci si complicherebbe un mare la vita
Spero di esserti stato utile...
Ciao RIccardo ;-)

Qualcuno di voi può darmi una dritta?
allora, io mi sono fatto una funzionella come quella che segue che
dovrebbe fare quello che dici tu.  NomeFile è il nome del file .ini,
Gruppo è il nome del gruppo di valori (quello tra [parentesi quadre])
nel quale vuoi cercare il valore del parametro NomeValore.
in pratica: [Colours] è un gruppo e BackGround è un NomeValore.  se
passi questi parametri la funzione ti dovrebbe restituire #000000.  a
te poi assegnare questo valore in modo adeguato all'interno del tuo
script.
aggiungo qualche commentino all'interno del codice
<%
function fLeggiValore(NomeFile, Gruppo, NomeValore)
dim fso
dim txtF
dim c
dim riga
dim flagGruppo
dim arrCoppia
dim appoValore
 
' siccome sono pigro prevedo il caso di una 
' chiamata tipo fLeggiValore("", ecc.)
if NomeFile = "" then
   NomeFile = "default.ini"
end if
' settaggi vari per aprire il file ini con filesystemobject
set fso = createobject("Scripting.FileSystemObject")
NomeFile = server.mappath(NomeFile)
Set txtF = fso.OpenTextFile(NomeFile)
' scorro il file fino alla fine
do until txtF.atendofstream
 
   ' leggo l'n-sima riga
   riga = txtF.readline
   riga = trim(riga)
 
   ' controllo se la riga è l'intestazione 
   ' del gruppo di cui voglio cercare il valore
   if riga = "[" & Gruppo & "]" then
      flagGruppo = true
   end if
 
   if flagGruppo = true then
      ' anche qui, siccome sono pigro,
      ' prevedo il caso nel quale non specifico il
      ' NomeValore
      ' se ho specificato il NomeValore...
      if Nomevalore <> "" then
         ' ... controllo che la stringa cominci
         ' proprio con esso
         if instr(riga, NomeValore) = 1 then
            arrCoppia = split(riga, "=")
            appoValore = trim(arrCoppia(ubound(arrCoppia)))
            ' ho trovato quel che volevo, esco dal ciclo
            exit do
         end if
      else
         ' ...invece, se non ho specificato NomeValore,
         ' ad es. con una chiamata tipo 
         ' fLeggiValore("file.ini", "[Colore], ""),
         ' allora prendo il primo valore del Gruppo
         riga = txtF.readline
         riga = trim(riga)
         appoValore = riga
         ' ho trovato quel che volevo, esco dal ciclo
         exit do
      end if
   end if
loop
' chiudo gli oggetti aperti per liberare memoria
txtF.close
set txtF = nothing
 
set fso = nothing
' assegno alla funzione il valore eventualmente trovato
fLeggiValore = appoValore
end function
%>
-- 
non studio non lavoro non guardo la tv
non vado al cinema non faccio sport