Note: Testo rimosso dalla rev 1  e Testo aggiunto nella rev2

5RigheWiki

eccolo:

 #!/path/per/ruby -r cgi
 H=’HomePage’;B=’w7.cgi?n=%s’;p=(c=CGI.new(‘html4’)).params;n=p‘n’||HH='HomePage';B='w7.cgi?n=%s';p=(c=CGI.new('html4')).params;n=p['n'][0]||H
 d=p‘d’;t=IO.read(n)rescued=p['d'][0];t=IO.read(n)rescue ’’;open(n,’w’).puts(t=CGI.escapeHTML(d))'';open(n,'w').puts(t=CGI.escapeHTML(d)) if d
 c.out{c.h1{n}c.a(B%H){H}+c.pre{c.out{c.h1{n}+c.a(B%H){H}+c.pre{ t.gsub(/([A-Z]\w){2}/){|w|t.gsub(/([A-Z]\w+){2}/){|w| c.a(B%w){w}}}+c.a(B%w){w}}}+
 c.form(“get”){c.textarea(‘d’){t}+c.hidden(‘n’,n)+c.submit}}

c.form("get"){c.textarea('d'){t}+c.hidden('n',n)+c.submit}}

in forma leggermente piu’ leggibile e’ questo:

!/path/per/ruby.exe

 #!/path/per/ruby.exe -r cgi

H=’HomePage’ H='HomePage' # La prima pagina B=’wk5.cgi?nome=%s’ B='wk5.cgi?nome=%s' # Il link base, wk5.cgi e’e' il file c=CGI.new(‘html4’) para=c.params

  1. c=CGI.new('html4') para=c.params # se il parametro non esiste, e vale nil,
  2. # viene asegnato H nome=(para‘nome’ nome=(para['nome'][0] or H)

  1. H) # se stiamo scrivendo la pagina passiamo anche i dati data=para‘data’
  2. data=para['data'][0] # leggiamo il file, se non esiste catturiamo
  3. l’eccezione # l'eccezione e usiamo unoi spazio come testo txt=IO.read(nome) txt=IO.read(nome) rescue ’’
  1. '' # se stiamo scrivendo data != nil if data txt=CGI.escapeHTML(data) txt=CGI.escapeHTML(data) #puliamo il codice # e lo scriviamo # pessimo esempio: il file andrebbe chiuso :) open(nome,'w+').puts( txt) if data open(nome,’w+’).puts(end # txt) if data end
  2. buttiamo sulla connessione: c.out{ c.out{ # header http vari c.h1{n}+ c.h1{n}+ # nomepagina c.a(B%H){H}+ c.a(B%H){H}+ # B%H= w5.cgi?nome=QualcheNome c.pre{ c.pre{ t.gsub(/([A-Z]\w+){2}/){t.gsub(/([A-Z]\w+){2}/){ |w| c.a(B%w){w} |w| c.a(B%w){w} } }+ # il corpo della pagina c.form(“get”){ c.textarea(‘d’){t}+ c.hidden(‘n’,n)+ c.submit c.form("get"){ c.textarea('d'){t}+ c.hidden('n',n)+ c.submit } } }
Created on November 25, 2005 13:34 by il gruppo (256.256.256.256)