Javascript disabled ? Erkennen in CGI-EXE ?

Vom Front-End bis SOAP.

Moderator: Moderatoren

Antworten
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Javascript disabled ? Erkennen in CGI-EXE ?

Beitrag von brandelh »

Hi,

es gibt neben mir ja noch andere die Javascript im Browser disabled haben. :D
Ich sehe ab und zu Meldungen wie "Javascript ist ausgeschaltet ... sie müssen ..."

Also muss es möglich sein innerhalb einer Website (im Browser) darauf zu reagieren, aber ich frage mich ...
Kann ich das nicht schon in der CGI-EXE auf dem Server erkennen ?

Bei den Umgebungsvariablen des Servers bin ich nicht fündig geworden, hat jemand mehr gefunden ?

Ich könnte mir auch vorstellen, dass eine HIDDEN Variable per JavaScript auf True/Ein/JA gesetzt wird und wenn die fehlt ist es aus, aber wie macht man das im <FORM>ular ?
Gruß
Hubert
Benutzeravatar
urbi
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 142
Registriert: So, 26. Mär 2006 18:47
Wohnort: 76185 Karlsruhe
Kontaktdaten:

Re: Javascript disabled ? Erkennen in CGI-EXE ?

Beitrag von urbi »

Hallo Hubert,
das geht mit Test über Ajax,
siehe Script im Header
JSTEST ruft GETSESDAT und setzt adm->isjava auf 1
Die varialble SESSN wird nun von Seite zu Seite weitergegeben
so kann adm->isjava mit GETSESDAT(oHTML, oContext,sessn)[13]
abgefragt werden

Gruß
Rainer

Code: Alles auswählen

IF val(sessn) > 0
   cscript := '<script type="text/javascript"><!--' + crlf
   cscript += '     var oRequest = null;' + crlf
   cscript += '     if(window.XMLHttpRequest) {' + crlf
   cscript += '        oRequest = new XMLHttpRequest();' + crlf
   cscript += '        }' + crlf
   cscript += '     else ' + crlf
   cscript += '       if(window.ActiveXObject) {' + crlf
   cscript += '         oRequest = new ActiveXObject("Microsoft.XMLHTTP");' + crlf
   cscript += '     }' + crlf

   cscript += '     if(oRequest != null) { ' + crlf
   cscript += '           oRequest.open("GET", "'+ccgi+'/waa1gate.exe?WAA_PACKAGE=ADSHOP&WAA_FORM=jstest&id='+sessn+'", true);' + crlf
   cscript += '           oRequest.onreadystatechange = function() {}  ;'
   cscript += '           oRequest.send(null);' + crlf
   cscript += '     }' + crlf
   cscript += '//--></script>' + crlf

   cHtml+=cscript

ENDIF
oHtml:put(cHtml)




FUNCTION JSTEST(oHtml,oContext)
LOCAL ctime 
LOCAL asess,sessn := oHtml:getvar("id")
asess := GETSESDAT(oHTML,oContext,sessn,NIL,NIL,"1")
ctime := SecToTime( TimeToSec(TIME()) - TimeToSec(asess[12]) )
oHtml:put("ok|"+ctime+"|! ")
RETURN NIL

FUNCTION GETSESDAT(oHTML, oContext,sessn,cact,chref,cjava)
LOCAL sess,nnew,knum,cip,date,zeit
Local avar,cname,level,jstest
local ctest,cdir:= curdrive()+":\"+curdir()  
sessn := IIF(sessn=NIL,"",sessn) 
sess:="nix"
   if LEN(sessn) < 10 
      sessn := STRZERO(DOY(DATE()),3) + STRZERO(SECONDS(),5)+RANDOM()
      sess  := sessn 
   ENDIF
   avar := { "Gast ",sessn,"","","","","","",cDir,"","x","","0"}
   cip := oContext:getRemoteAddr()
   DO WHILE !OpenAdmindbf()
      SLEEP(5)
      OpenAdmindbf()
   ENDDO
   DbLocate( {|| TRIM(Adm->sid) == TRIM(sessn) } )    
   IF FOUND()
      IF !EMPTY(chref)
         adm->chref = chref
      ENDIF 
      IF !EMPTY(cact)
         adm->lcookie := cact
      ENDIF
      IF !EMPTY(cjava)
         adm->isjava := cjava
      ENDIF  
      ctest := adm->test             
      cact := TRIM(adm->lcookie) 
      cname:= TRIM(adm->name)
      level:= SUBSTR(adm->message,7,2)
      sess := TRIM(adm->sid) 
      cDir := TRIM(adm->path)
      nnew := adm->news 
      knum :=  ALLTRIM(adm->kunum)
      date :=  adm->datum
      zeit :=  adm->zeit 
      chref:=  adm->chref
      jstest:= adm->isjava
      avar := {cname,sess,level,cip,nnew,knum,date,cact,cDir,chref,ctest,zeit,jstest}
   ENDIF
   DBCLOSEAREA()
RETURN (avar)
urbi
Antworten