Allora... Sono le Function leggiScheda, schedaEsiste, scriviNota che non funzionano... Non fanno proprio quel che dovrebbero.

Ho tentato di forzare la cosa, andando a prelevare dai due include le funzioni sovracitate[cancellando poi gli include stessi], tuttavia NIENTE, non va.

codice:
<%@ LANGUAGE = JScript %>
<%

var sfo = new ActiveXObject("Scripting.FileSystemObject");

function schedaEsiste(id,pt) {
  if (id.indexOf("/")!=-1) Response.End();
  var thefile = Server.MapPath(pt + "mdb-database/utenti/" + id + ".asp");
  if (sfo.FileExists(thefile)) return true;
  else return false;
}

function leggiScheda(id,pt) {
  if (id.indexOf("/")!=-1) Response.End();
  var thefile = Server.MapPath(pt + "mdb-database/utenti/" + id + ".asp");
  if (!sfo.FileExists(thefile)) var sch = "errore";
  else {
    var sst = sfo.OpenTextFile(thefile);
    sst.SkipLine();
    var a0 = sst.ReadLine();            // password
    var a1 = sst.ReadLine();            // mail
    var a2 = parseInt(sst.ReadLine());  // condizione
    var a3 = sst.ReadLine();            // carica
    var a4 = parseInt(sst.ReadLine());  // pietas
    var a5 = parseInt(sst.ReadLine());  // denaro
    var a6 = sst.ReadLine();            // sesso
    var a7 = sst.ReadLine();            // amore
    var a8 = parseInt(sst.ReadLine());  // potenza
    var a9 = parseInt(sst.ReadLine());  // sapienza
    var a10 = parseInt(sst.ReadLine());  // salute
    var a11 = sst.ReadLine();           //rango
sst.Close();
    var sch = new scheda(id,a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11);
  }
  return sch;
}

function salvaScheda(sch,pt) {
  var thefile = Server.MapPath(pt + "mdb-database/utenti/" + sch.user + ".asp");
  var sst = sfo.CreateTextFile(thefile);
  sst.Write("<");
  sst.write("% Response.End %");
  sst.WriteLine(">");
  sst.WriteLine(sch.password);
  sst.WriteLine(sch.mail);
  sst.WriteLine(sch.condizione);
  sst.WriteLine(sch.carica);
  sst.WriteLine(sch.pietas);
  sst.WriteLine(sch.denaro);
  sst.WriteLine(sch.sesso);
  sst.WriteLine(sch.amore);
  sst.WriteLine(sch.potenza);
  sst.WriteLine(sch.sapienza);
  sst.WriteLine(sch.salute);
  sst.writeLine(sch.rango);
  sst.Close();
}

function scriviNota(id,pt,nomeNota,valNota) {
  nomeNota = nomeNota.toLowerCase();
  var thefile = Server.MapPath(pt + "mdb-database/annotazioni/" + id + ".asp");
  var sst = sfo.OpenTextFile(thefile);
  var arrNota = new Array();
  var iNota = 0;
  while (!sst.AtEndOfStream) arrNota[iNota++] = sst.ReadLine();
  sst.Close();
  var trovataNota = false;
  for (iNota=1;!trovataNota && iNota<arrNota.length;iNota++)
    if (nomeNota==arrNota[iNota].substring(0,arrNota[iNota].indexOf("="))) {
      trovataNota = true;
      arrNota[iNota] = nomeNota + "=" + valNota;
    }
  if (!trovataNota) arrNota[arrNota.length] = nomeNota + "=" + valNota;
  var sst2 = fso.CreateTextFile(thefile);
  for (iNota=0;iNota<arrNota.length;iNota++) sst2.WriteLine(arrNota[iNota]);
  sst2.Close();
}

function loginEffettuato() {
  var le = "" + Session("athenetuser");
  if (le!="undefined" && le!="") return true;
  else return false;
}

if (!loginEffettuato()) Response.Redirect("../nosession.htm");
if(Session("athenetcondizione")==4)  {
var dio= Session("athenetcondizione")
}

var carica =Session("athenetcarica");
var capo= false;
if (carica=="prefetto del pretorio") capo = true;

var a = Session("athenetcarica")=="pretoriano";
var val= Request.QueryString("u");

var fatto = false;
var errore = 0;


//Ricevo dal Form il nome
if (val==0) {
var assunto=Request.querystring("nome");
var lavoro=Request.querystring("grado");
if ((assunto!="undefined" && assunto!="") && (capo || dio)) {

if (!schedaEsiste(assunto,"../")) errore = 1;
else {
s = leggiScheda(s,"../");
if (carica!="") errore==3;
else {
salvaScheda(s,"../");
}
s.carica= lavoro;

scriviNota(s,"../","paga",350);
scriviNota(s,"../","carica",lavoro + ".gif");
scr = sfo.OpenTextFile(Server.MapPath("pretoriani.txt"),8);
scr.WriteLine(lavoro + ".gif" + "*"+ nome);
scr.Close();
fatto = true;
}
  }
	  }
var str = sfo.OpenTextFile(Server.MapPath("pretoriani.txt"));
var cisono = Application("cisono");
gir = cisono.split("&");

%>

<html>
<head>
<title>I Pretoriani di Roma</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style>
a {text-decoration: none; color: blue}
a:hover {color: red}
</style>
</head>

<body bgcolor="#D2C5AA">
<div align="center"> 
  

[img]logo.gif[/img]</p>
  <% if (errore==1) { %>
  

<font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#990000">L'UTENTE 
    NON ESISTE!</font></p>
  <% } %> 
  <% if (errore==2) { %>
  

<font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#990000">L'UTENTE E' UN METECIO</font></p>
  <% } %> 
  <% if (errore==3) { %>
  

<font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#990000">L'UTENTE 
    HA GIA' UNA CARICA!</font></p>
  <% } %> 
  <% if (fatto) { %>
  

<font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#990000">FATTO! LA CARICA E' STATA ASSEGNATA</font></p>
  <% } %> 
  <% if (capo || dio) { %> 
  <form name="form1" method="get" action="default.asp?u=0">
    <table width="100%" border="0" cellspacing="0" cellpadding="0">
      <tr align="center" valign="top">  
        <td width="50%"> 
          

<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Nomina un <font color="#006600">Pretoriano</font>:</font></p>
          


            Nomina
            <input type="text" name="nome" maxlength="20">
            nella carica di 
            <select name="grado">
		        <option value="prefpret">Prefetto del Pretorio</option>
				<option value="tribuno">Tribuno Militare</option>
				<option value="trecent">Trecentenarius</option>
				<option value="centur">Centurione</option>
				<option value="pretoriano">Guardia Pretoriana</option>
				<option value="recluta">Recluta</option>
	    </select></p></td>
      </tr>
    </table>
	<input type="submit" value="Nomina">
  </form>
  <% } %>
  

<font face="Verdana, Arial, Helvetica, sans-serif" size="2">I Pretoriani di Roma: </font></p>
  <table width="85%" border="0" cellspacing="1" cellpadding="1">
    <tr align="center" valign="middle" bgcolor="#CCCCFF"> 
      <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif" color="navy">S.</font></td>
      <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif" color="navy">Pretoriano</font></td>
      <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif" color="navy">Carica</font></td>
      <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif" color="navy">Attualmente</font></td>
      <% if (capo || dio) { %> 
      <td><font size="2" face="Verdana, Arial, Helvetica, sans-serif" color="navy">Elimina</font></td>
      <% } %> 
    </tr>
    <% while (!str.AtEndOfStream) {
         aux = str.ReadLine();
         arr = aux.split("#");
         trovato = false;
         for (i=0;i<gir.length;i++) {
           temp = gir[i].split("/");
           if (temp[0]==arr[1]) trovato = true;
         }
    %> 
    <tr align="center" valign="middle"> 
      <td>[img]../../../simboli/<%=arr[0]%>[/img]</td>
      <td><font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#006600"><%=arr[1]%></font></td>
      <td><font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="#006600"><%=arr[2]%></font></td>
      <% if (trovato) { %>
      <td><font face="Verdana, Arial, Helvetica, sans-serif" size="2" color="navy">DISPONIBILE!</font></td>
      <% } else { %>
      <td><font face="Verdana, Arial, Helvetica, sans-serif" size="1" color="#006600">NON DISPONIBILE</font></td>
      <% } %>
      <% if (capo || dio) { %> 
      <td>
        <font size="2" face="Verdana, Arial, Helvetica, sans-serif">Togli carica</font>
      </td>
      <% } %> 
    </tr>
    <% } str.Close(); %> 
  </table>
  

</p>
</div>
</body>
</html>
Che posso fare?