«as400»badip
Content-type: text/html
X-XSS-Protection: 1;
«!doctype html»
«HTML»
«HEAD»«TITLE»CGIDEV2«/TITLE»
«style»
.tab {border: #dd0077 1px solid; font-family: "Arial Narrow"; color: #ffaa00; font-size: 26px;}
«/style»
«script type="text/javascript"»
//=====================================================================
// Random number
//=====================================================================
function TS() {var ts; ts=Math.random(); return ts;}
//=====================================================================
// Download documentation
//=====================================================================
function openDown(exe) {
var ts=TS();
document.goOpenDown.ts.value=ts;
document.goOpenDown.maker.value=exe;
document.goOpenDown.submit();
}
«/script»
«/HEAD»
«BODY»«br»«br»
«table width=600»
«tr»
«form name="goOpenDown" method="post" action="http://www.easy400.net/easy400p/downloadcm.cgi"»
«input type="hidden" name="ts"»
«input type="hidden" name="maker"»
«/form»
«td align=center»
«table width=400 class=tab»
«tr»«td align=center»
La tua autorizzazione ad accedere a questo sito è stata rimossa.«br»
Motivo /%reasoncode%/.
«/td»«/tr»
«/table»
«/td»«/tr»
«/table»
«/BODY»«/HTML»
«as400»all
Content-type: text/html
Expires: 0
«HTML»
«HEAD»«TITLE»Subito in Web il tuo System i con l'RPG-ILE«/TITLE»
«meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"»
«meta name="DOCUMENTCOUNTRYCODE" value="IT"/»
«meta name="DOCUMENTLANGUAGECODE" value="EN"/»
«META name="description" content="EASY400 - Sviluppo WEB con ILE RPG AS400 e CGI"»
«META name="abstract" content="Demos, sample code, tutorial, utilities. Free downloads."»
«META name="keywords" content="AS/400, AS400, iSeries, System i, CGI, TCP/IP, TCPIP, TCP, HTTP, FTP, WSG, TELNET, SNIPPETS,
EZPACK, PKLIB, SECTCP, PEROTTI"»
«script type="text/javascript" language="JavaScript"»
«!--
if ((navigator.appName == "Microsoft Internet Explorer") && (parseInt(navigator.appVersion) »= 4 )) {
document.write('«link rel="stylesheet" href="/cgidev/ie1.css" type="text/css"/»') }
else if ((navigator.appName == "Netscape") && (parseInt(navigator.appVersion) »= 4)) {
document.write('«link rel="stylesheet" href="/cgidev/ns1.css" type="text/css"/»') }
else {
document.write('«link rel="stylesheet" href="/cgidev/r1.css" type="text/css"/»') }
// --»
«/script»
«noscript»«link rel="stylesheet" href="/cgidev/r1.css" type="text/css"/»«/noscript»
«style TYPE="text/css"»
«!--
.title { font-family: Arial, sans-serif; font-weight: normal; font-size: 24px; }
.subtitle { font-family: Arial, sans-serif; font-weight: bold; font-size: 16px; color: "#2A4A92"; }
.reg {font-size: 10pt; font-family: arial, helvetica, helv}
.mono {font-size: 10pt; font-family: courier}
.bb {font-size: 12pt; color: blue; font-weight: bold; font-family: arial, helvetica, helv}
.brush {font-size: 16pt; color: red; font-family: brush script, souvenir lt bt, verdana, arial}
.warn {font-family: Arial, sans-serif; font-weight: normal; font-size: 15px;}
.black {color: black; font-weight: normal; }
li.blue {font-family: Arial, sans-serif; font-weight: bold; font-size: 13px; color: blue;}
th {font-size: 10pt; font-family: arial, helvetica, helv}
td {font-size: 10pt; font-family: arial, helvetica, helv}
--»
«/style»
«SCRIPT LANGUAGE="JavaScript"»
«!--- Hide script from old browsers
reSep = /\.Pwd=/
reQuote = /\'/
reSpace = /\s/
//=============================================================
// TS() Get a TimeStamp to make the CGI request unique
//=============================================================
function TS() {
RightNow = new Date();
year=RightNow.getFullYear();
month=(RightNow.getMonth()+1);
day=RightNow.getDate();
hours=RightNow.getHours();
minutes=RightNow.getMinutes();
seconds=RightNow.getSeconds();
TimeStamp="ts"+year+month+day+hours+minutes+seconds;
return TimeStamp;
}
//=============================================================
// getMyDate() Get today's date
//=============================================================
function getMyDate() {
var now = new Date();
var yr = now.getYear();
var mName = now.getMonth() + 1;
var dName = now.getDay() + 1;
var dayNr = ((now.getDate()«10) ? "0" : "")+ now.getDate();
if(dName==1) Day = "Domenica";
if(dName==2) Day = "Lunedì";
if(dName==3) Day = "Martedì";
if(dName==4) Day = "Mercoledì";
if(dName==5) Day = "Giovedì";
if(dName==6) Day = "Venerdì";
if(dName==7) Day = "Sabato";
if(mName==1) Month="Gennaio";
if(mName==2) Month="Febbraio";
if(mName==3) Month="Marzo";
if(mName==4) Month="Aprile";
if(mName==5) Month="Maggio";
if(mName==6) Month="Giugno";
if(mName==7) Month="Luglio";
if(mName==8) Month="Agosto";
if(mName==9) Month="Settembre";
if(mName==10) Month="Ottobre";
if(mName==11) Month="Novembre";
if(mName==12) Month="Dicembre";
var todaysDate =(" " + Day
+ " " + dayNr + " " + Month)
return todaysDate;
}
//=============================================================
// openWin() Open a small window
//=============================================================
function openWin(html) {
MyWin=window.open(html+"?ts="+TS(),'','width=500,height=600,scrollbars,resizable,status');
MyWin.focus();
return true
}
//==========================================================
// Get a cookie of a given name
// If found, returns the cookie value as a string
//==========================================================
function getCookie(Name) {
var search = Name + "="
if (document.cookie.length » 0) { // if there are any cookies
offset = document.cookie.indexOf(search)
if (offset != -1) { // if cookie exists
offset += search.length
// set index of beginning of value
end = document.cookie.indexOf(";", offset)
// set index of end of cookie value
if (end == -1)
end = document.cookie.length
return unescape(document.cookie.substring(offset, end))
}
}
}
//==========================================================
// myEasy400User()
// returns the user name
// (provided it contains no blanks nor quotes)
// or null
//==========================================================
function myEasy400User() {
var user = getCookie("myEasy400")
var userName = new String("")
if (user != null) {
var d= user.search(reSep)
if (d != -1) {
var userName = user.substring(0,d)
var q= userName.search(reQuote)
var s= userName.search(reSpace)
if ( (q != -1) || (s != -1) )
userName=""
}
}
return userName
}
//==========================================================
// myEasy400Pwd()
// returns the user password
// (provided it contains no blanks nor quotes)
// or null
//==========================================================
function myEasy400Pwd() {
var user = getCookie("myEasy400")
var userName = new String("")
var userPwd = new String("")
if (user != null) {
var d= user.search(reSep)
if (d != -1) {
var userPwd = user.substring(d+5,user.length)
var q= userPwd.search(reQuote)
var s= userPwd.search(reSpace)
if ( (q != -1) || (s != -1) )
userPwd=""
}
}
return userPwd
}
//==========================================================
// getXPBMODE()
// returns one char mode for cgi downloads
//==========================================================
function getXPBMODE() {
var xpbmode = ""
var xUser = myEasy400User()
var xPwd = myEasy400Pwd()
if ( (xUser != "") && (xPwd != "") )
xpbmode = "W"
else
xpbmode = "askpwd"
return xpbmode
}
// end script hiding from old browsers --»
«/SCRIPT»
«/HEAD»
«BODY TEXT="black" LINK="blue" VLINK="blue" ALINK="blue" BGCOLOR="white"»
«table width="100%" cellspacing="0" cellpadding="0" border=0»
«tr»«td align=left width="20%"»
«A HREF="/cgidev2o/demoframe.htm" target="_top"»
«IMG SRC="/cgidev/usa.gif" BORDER="0" width="30"
ALT="Switch to American English"
TITLE="Switch to American English"»«/A»
«/td»
«td align=center»«div class=redtitle»
CGIDEV2: Porta in WEB il tuo System i con l'RPG-ILE«/div»«/td»
«td width="20%"»«table width="100%"»
«tr»«td align=right»
«A HREF="http://hoohoo.ncsa.uiuc.edu/cgi/overview.html"
target="_blank"»
«IMG SRC="/cgidev/whatscgi.gif" border="0"
ALT="Link to a page describing what CGIs are"
TITLE="Link to a page describing what CGIs are"»«/A»
«/td»«/tr»
«tr»«td align=right»«b»
«SCRIPT LANGUAGE="JavaScript"»
document.write("«FONT SIZE='2' FACE='verdana,arial' color='black'»"
+getMyDate()+"«/FONT»")
«/SCRIPT»
«/b»
«/td»«/tr»
«/table»
«/td»«/tr»
«/table»
«table width="100%"»
«tr»«td valign=top width="49%"»
«table width="100%" class="pinkbacktbl"»
«tr»«td»Se conosci l'RPG, la via più facile
per sviluppare applicativi Web
è quella di utilizzare la tecnica
«b»CGI«/b».
La tecnica CGI di per sè non è facile.
Noi però la abbiamo resa cosi'
«font color=red»«b»f«/b»«/font»acile
da metterla alla portata di tutti,
ed anche tu ne sarai entusiasta.
Questo perchè noi insegniamo -e ne forniamo gli strumenti-
una tecnica, fondata su di un
«b»service program«/b»,
che ti evita tutte le complessità del codice CGI.
In più questa tecnica ti consente di
«i»definire le tue pagine Web«/i»
all'esterno dei programmi.«br»
Qualunque linguaggio capito dai browser Web
va bene per definire le tue pagine esterne,
per esempio
«b»html«/b»,
«b»xml«/b»,
«b»wml«/b»,
«b»javascript«/b».«br»
Il service program è stato sviluppato da
«i»Mel Rothman«/i» quando era nel
Custom Technology Center (CTC) IBM di
Rochester (MN), U.S.. Mel ha seguito e migliorato questo codice per molti anni.
«/td»«/tr»
«/table»
«/TD»
«td width="2%"» «/td»
«td valign=top rowspan="2" width="49%"»
«table width="100%" class="greenbacktbl"»
«tr»«td align=center»
«div class=brush»
CGIDEV2 = CGIDEV Versione 2 «/div»
«/td»«/tr»
«tr»«td»La prima versione («b»CGIDEV«/b») del service program CGI venne alla luce nel 1996 e fu pubblicata
sul sito Easy400 nel Luglio del 1997.
«p»La seconda versione («b»CGIDEV2«/b») comparve alla fine del 1999 ed incominciò ad essere distribuita
dal sito Easy400 nel Gennaio del 2000.
«p»«b»CGIDEV2«/b» fu un enorme balzo in avanti sia per le prestazioni che per la facilità d'uso.
«p»Da quel momento CGIDEV2 divenne per i programmatori RPG uno tra i più affascinanti strumenti
di sviluppo WEB per la piattaforma AS/400 (oggi «b»System i«/b»).
«/td»«/tr»
«tr»«td align=center»«img src="/cgidev/c.gif" height="15" width="1"»
«table cellspacing="0" cellpadding="0"»
«tr»«td»«A HREF="/cgidev2oit/version2.htm?ts=/%TS%/" target="_blank" class="none"»
«IMG SRC="/cgidev/gobutton.gif" border="0"
alt="miglioramenti di CGIDEV2" title="miglioramenti di CGIDEV2"»«/A»
«b»miglioramenti di CGIDEV2«/b»«/td»
«td width="30"» «/td»
«td align=right»«A HREF="/cgidev2h/changes.mbr?ts=/%TS%/" target="_blank" class="none"»
«IMG SRC="/cgidev/gobutton.gif" border="0"
alt="Log delle variazioni" title="Log delle variazioni"»«/A»
«b»Log delle variazioni«/b»«/td»«/tr»
«/table»
«/td»«/tr»
«/table»
«/TD»«/TR»
«tr»«td width="49%" valign=bottom»
«table width="100%"class="whitebacktbl"»
«tr»«td»«P»In questo sito trovi dimostrazioni,
didattica, un sacco di codice origine.
Il meglio, però, è che puoi scaricare
tutto ciò che vuoi ed installarlo sul tuo AS/400,
così da poter continuare l'istruzione localmente.
... E dato che questo sito non ha obiettivi di profitto,
tutto ciò è «font color=red»«b»g«/b»«/font»ratis,
compreso l'aiuto remoto che potremo fornirti a richiesta.
«/td»«/tr»
«/table»
«/TD»«/TR»
«br»
«table width="100%" cellspacing="0" cellpadding="0" border="0"»
«tr»«td width="49%" valign="top"»
«table width="100%"»
«tr»«td width="100%" bgcolor="#4A9992"»
«/td»«/tr»
«tr»«td valign=top»
«font class=subtitle»
Guarda le nostre dimostrazioni«/font»«br»«br»
Le nostre dimostrazioni sono strumenti didattici.
Dopo averle eseguite, «i»entraci«/i» e
scopri come sono state realizzate.
«/td»«/tr»
«tr»«td»«ol»
«li class="blue"»
«A HREF="/cgidev2oit/demos.htm?ts=/%TS%/" target="_blank"
alt="Menù delle dimostrazioni base"
title="Menù delle dimostrazioni base"»«b»Dimostrazioni base«/b»«/A»«br»
«span class="black"»
È un insieme di dimostrazioni elementari,
facili da capire.
Ti consentono di apprendere celermente
le nozioni fondamentali del nostro metodo.
«/span»
«li class="blue"»
«A HREF="/cgidev2p/boatsch0.pgm?lng=it&ts=/%TS%/" target="_blank"
alt="Yacth World Demo"
title="Yacth World Demo"»
«b»YachtWorld«/b»«/a»«br»
«span class="black"»
Storicamente, questo è stato il mio
primo tentativo di produrre qualcosa
di un pò più sofisticato.
Da questa dimostrazione s'impara
come maneggiare elenchi tipo "«i»subfile«/i»"
e come nascondere informazioni negli
script inviati al client.«br»
Per accedere alla dimostrazione,
scegliere il colore dello sfondo,
quindi premere il bottone «b»go«/b».
«/span»
«table border="0" cellspacing="0" cellpadding="0"»
«form method=get action="/cgidev2p/boatsch0.pgm"
target="_blank"»
«input type=hidden name=lng value="it"»
«tr»«td rowspan=2 valign=top»
Colore dello sfondo:«/td»
«td»«font face="Helvetica,Helv,Arial" size="-1"»
«input type=radio name=bckgnd
value="white" checked»bianco«/td»
«td»«font face="Helvetica,Helv,Arial" size="-1"»
«input type=radio name=bckgnd
value="gray"»grigio«/td»
«td rowspan=2 valign=middle»
«input type=image
SRC="/cgidev/gobutton.gif" alt="go" border="0"»
«/td»«/tr»
«tr»«td»«input type=radio name=bckgnd
value="lblue"»celeste«/td»
«td»«input type=radio name=bckgnd
value="black"»nero«/td»«/tr»
«/form»
«/table»
«div class=reg»
«li class="blue"»
«A HREF="/centaur2/start" target="_blank"»«b»Centaur«/b»«/A»«br»
«span class="black"»
Si tratta di due dimostrazioni di applicazioni
e-commerce, una a pagina piena, l'altra
a "frame".
Sono esempi destinati non ai principianti,
ma a coloro che hanno già acquisito
una buona familiarità
con il metodo di Mel Rothman.
«/span»
«li class="blue"»
«A HREF="/js2p/getacar.pgm?action=d&ts=/%TS%/" target="_blank"»«b»Get
a virtual car«/b»«/A»«br»
«span class="black"»
Vuoi che i tuoi CGI traggano vantaggio
dal JavaScript nascosto nelle pieghe dell'HTML?
Questa dimostrazione, per esempio,
usa JavaScript per controllare l'input dell'utente
e per visualizzare elenchi di scelta
in finestre "«i»pop-up«/i»".
«/span»
«/ol»
«/td»«/tr»
«tr»«td bgcolor="#4A9992"»
«/td»«/tr»
«tr»«td valign=top»
«font class=subtitle»
Per i curiosi«/font»
«/td»«/tr»
«tr»«td valign=top»
«ol»
«li class="blue"»
«a href="http://www.easy400.net/easy400p/subs.html?ts=/%TS%/"
target="_blank"»«b»Quanti usano CGIDEV2?«/b»«/a»
«/td»«/tr»
«/table»
«/td»
«td width="2%"» «/td»
«td width="49%" valign="top"»
«table »
«tr»«td bgcolor="#4A9992"»
«/td»«/tr»
«tr»«td valign=top»
«font class=subtitle»
Percorso di apprendimento«br»«br»
«/td»«/tr»
«tr»«td valign=top»
«ol»
«li class="blue"»
«A HREF="/cgidev2oit/tips1.htm?ts=/%TS%/"
target="_blank"»«b»Primi
passi nell'apprendimento«/b»«/A»
«li class="blue"»
«A HREF="/cgidev/pdfs/cgiintit.pdf"
target="_blank"»
«b»Una breve presentazione«/b»«/a»
«span class="black"»
che spiega che cosa sono i CGI«/span»
«li class="blue"»«span class="black"»
Abbiamo un manuale che spiega in dettaglio tutte le funzioni del
«i»service program«/i» di CGIDEV2 e fornisce esempi di codice. Puoi:
«ul»
«li»accedere alla
«a href="/cgidev2oit/tutorial.htm?ts=/%TS%/"
target="_blank"»«b»Versione HTML«/b»«/a» del manuale CGIDEV2
«li»scaricare la
«a href="/cgidev/pdfs/cgidev2Tutorial.pdf"
target="_blank"»«b»Versione PDF«/b»«/a» del manuale CGIDEV2
«/ul»
«/span»
«li class="blue"»
«A HREF="http://www.easy400.net/cgiclass2/start" target="_blank"»«b»Didattica HTML«/b»«/A»«br»
«span class="black"»
Anche questa può essere scaricata ed installata
sul tuo AS/400 o sul tuo PC.«/span»
«/font»
«li class="blue"»
«A HREF="http://www.easy400.net/js2/start"
target="_blank"»«b»Didattica JavaScript«/b»«/A»«br»
«span class="black"»
Quando ti sembrerà di saperne abbastanza
sull'HTML e sui CGI, allora sarà
arrivato il momento di soffiare un pò
di intelligenza nei tuoi script client.«/span»
«/td»«/tr»
«tr»«td width="100%" bgcolor="#4A9992"»
«/td»«/tr»
«tr»«td valign=top»
«font class=subtitle»
Pagine calde«/font»
«/td»«/tr»
«tr»«td valign=top»
«ol»
«li class="blue"»
«a href="http://www.easy400.net/easy400p/maindown.cgi?xlng=it&ts=/%TS%/"
target="_blank"»«b»Downloads«/b»«/a» -
«span class="black"»
È il nostro materiale scaricabile,
sempre corredato di tutti
i sorgenti e ... completamente gratuito.
«/span»
«li class="blue"»
«a href="http://www.easy400.net/easy400p/main.html?xmain=6&xlng=it"
target="_blank"»«b»Che
c'è di nuovo«/b»«/a»
«span class="black"»
nel nostro materiale scaricabile«/span»
«/font»
«li class="blue"»
«a href="/cgidev2oit/tips2.htm?ts=/%TS%/"
target="_blank"»«b»Consigli
per la installazione«/b»«/a»
«li class="blue"»
«a href="/cgidev2o/faq.mbr?ts=/%TS%/"
target="_blank"»«b»FAQ«/b»«/a» -
«span class="black"»
Domande ripetitive«/span»
«li class="blue"»
«A HREF="mailto:gb_perotti@easy400.net"»
«b»Contattaci«/b»«/A»
«A HREF="mailto:gb_perotti@easy400.net"»
«IMG SRC="/cgidev/email_c.gif" border="0"
ALT="e-mail to Giovanni B. Perotti, Italia"
TITLE="e-mail a Giovanni B. Perotti, Italia"»«/A»
«/ol»
«/td»«/tr»
«tr»«td width="100%" bgcolor="#4A9992"»
«/td»«/tr»
«tr»«td valign=top»
«font class=subtitle»
Pagine di riferimento«/font»
«/td»«/tr»
«tr»«td valign=top»
«ol»
«li class="blue"»
«a href="/cgidev2o/index.htm?ts=/%TS%/"
target="_blank"»«b»Indice
analitico«/b»«/a»
«li class="blue"»
«a href="/cgidev2o/biblio.htm?ts=/%TS%/"
target="_blank"»«b»Manuali
e redbook collegati«/b»«/A»
«/ol»
«/td»«/tr»
«/table»
«/td»«/tr»
«tr»«td colspan=3 bgcolor="#4A9992"»
«/td»«/tr»
«tr»«td colspan=3 align="center"»
«table»
«tr»«td»
«font class=subtitle»
Abbiamo meritato i tuoi ringraziamenti?«/font»
«ul»
«li»L'adozione della nostra tecnica CGI per fare WEB
con iSeries 400
si e' tradotta in un vantaggio
per il tuo lavoro e per la tua azienda?
«li»Credi che questa tecnica potrebbe
consentire ad altri di conseguire
analoghi risultati?
«li»Pensi che la tua testimonianza possa giovare alla causa?
«/ul»
Se la pensi così,
«a href="http://www.easy400.net/easy400p/mainref01.html"
target="_blank"»«b»racconta a tutti i tuoi risultati«/b»«/a».
«/td»«/tr»
«/table»
«/td»«/tr»
«/table»
«br»«br»
«/BODY»
«/HTML»
|