Salve a tutti.
è da un po' di tempo che lavoro a questo progetto per l'università in cui studio, e mi ritrovo con un problema che non riesco a risolvere

in pratica nella pagina c'è un form che deve essere validato con la libreria DDV scaricata da questo sito, io ho aggiunto il campo onsubmit="return formValidate(this)", però la validazione non avviene... ho anche controllato pensando che javascript fosse disabilitato sul mio browser (mozilla 2.0.2) ma non lo è... help!

riporto qui il codice della pagina. grazie a tutti per l'aiuto che potrete darmi

PS:uso sia php sia javascript, e visto che il problema riguarda javascript pensavo fosse giusto postare in questa sezione del forum. spero di non aver sbagliato.

***********************MODELLO_INFORMATIVO.PHP**** *******************
<?php
include('config.inc.php'); //includo il file con i dati del database e della sessione
top(); //apro la pagina

$check_post = isset($_POST['submit']); //variabile che verifica se è avvenuto l'invio dei dati

if(!$check_post) //se non sono stati inviati i dati
{
//verifico se sono già presenti all'interno del database e se sono già presenti creo il form già compilato, che può essere modificato
$conn = DB::connect($dsn);
$var = array($_SESSION['codice_cdl'], $_SESSION['anno_rav']);
$query = "select * from modello_informativo where codice_cdl=? and anno_rav=?";
$res = $conn->query($query, $var);
if($row = $res->fetchRow(DB_FETCHMODE_ASSOC))
{
echo "

<h2>Modello Informativo.</h2></p>

<form action=modello_informativo.php method=post onsubmit=\"return formValidate(this)\">




Nome del corso:

<input type=text name=nome_cdl size=100 maxlength=100 title=\"Nome del corso\" ddv-required=\"true\" ddv-maxlength=\"100\" value=\"$row[nome_cdl]\">



Classe:

<input type=text name=classe size=10 maxlength=10 title=\"Classe del corso\" ddv-required=\"true\" ddv-maxlength=\"10\" value=\"$row[classe]\">



Facolt&agrave; di riferimento del corso:

<input type=text name=facolta_riferimento size=100 maxlength=100 title=\"Facolt&agrave; di riferimento\" ddv-required=\"true\" ddv-maxlength=\"100\" value=\"$row[facolta_riferimento]\">



Primo anno accademico di attivazione:

<input type=text name=anno_attivazione size=10 maxlength=10 title=\"Primo anno accademico di attivazione\" ddv-required=\"true\" ddv-maxlength=\"10\" value=\"$row[anno_attivazione]\">



Durata minima prevista per il corso (in anni):

<input type=text name=durata_minima size=10 maxlength=10 title=\"Durata minima prevista per il corso\" ddv-required=\"true\" ddv-maxlength=\"10\" value=\"$row[durata_minima]\">



Sede del corso:

<input type=text name=sede_cdl size=100 maxlength=100 title=\"Sede del corso\" ddv-required=\"true\" ddv-maxlength=\"100\" value=\"$row[sede_cdl]\">



Responsabile del corso (509 art. 11 c.7 B):

<input type=text name=responsabile size=100 maxlength=100 title=\"Responsabile del corso\" ddv-required=\"true\" ddv-maxlength=\"100\" value=\"$row[responsabile]\">



Comitato di gestione del corso (DM 8/5/01 art.4 allegato 11):

<textarea rows=10 cols=100 name=comitato_gestione title=\"Comitato di gestione del corso\" ddv-required=\"true\" ddv-maxlength=\"800\">$row[comitato_gestione]</textarea>



Segreteria didattica di riferimento per gli studenti del corso:

<input type=text name=segreteria_didattica size=100 maxlength=100 title=\"Segreteria didattica di riferimento\" ddv-required=\"true\" ddv-maxlength=\"100\" value=\"$row[segreteria_didattica]\">



Obiettivi formativi specifici:

<textarea rows=10 cols=100 name=obiettivi_formativi title=\"Obiettivi formativi specifici\" ddv-required=\"true\" ddv-maxlength=\"800\">$row[obiettivi_formativi]</textarea>



Calendario delle attivit&agrave; didattiche (Link all'orario delle lezioni):

<input type=text name=link_orario_lezioni size=100 maxlength=200 title=\"Calendario delle attivit&agrave; didattiche\" ddv-required=\"true\" ddv-maxlength=\"200\" value=\"$row[link_orario_lezioni]\">



Conoscenze richieste per la selezione degli studenti in ingresso (se presente):

<textarea rows=20 cols=100 name=conoscenze_richieste title=\"Conoscenze richieste per la selezione\" ddv-required=\"true\" ddv-maxlength=\"3500\">$row[conoscenze_richieste]</textarea>



Conoscenza consigliate per gli studenti in ingresso:

<textarea rows=20 cols=100 name=conoscenze_consigliate title=\"Conoscenze consigliate\" ddv-required=\"true\" ddv-maxlength=\"3500\">$row[conoscenze_consigliate]</textarea>



Caratteristiche della prova finale:

<textarea rows=10 cols=100 name=prova_finale title=\"Caratteristiche della prova finale\" ddv-required=\"true\" ddv-maxlength=\"800\">$row[prova_finale]</textarea>



Ambiti occupazionali per i laureati:

<textarea rows=10 cols=100 name=ambiti_occupazionali title=\"Ambiti occupazionali dei laureati\" ddv-required=\"true\" ddv-maxlength=\"800\">$row[ambiti_occupazionali]</textarea>



Ordinamento didattico del corso di studi:

<textarea rows=10 cols=100 name=ordinamento_didattico title=\"Ordinamento didattico del corso\" ddv-required=\"true\" ddv-maxlength=\"800\">$row[ordinamento_didattico]</textarea>



Indirizzo web del CdS:

<input type=text name=indirizzo_web_cds size=100 maxlength=200 title=\"Indirizzo web del CdS\" ddv-required=\"true\" ddv-maxlength=\"200\" value=\"$row[indirizzo_web_cds]\">



<input type=reset value=Cancella> <input type=submit name=submit value=Invia>
</p>
</form>";

$conn->disconnect();
}
else //altrimenti creo il form vuoto pronto per essere compilato da zero
{
?>



<h2>Modello Informativo.</h2></p>

<form action=modello_informativo.php method=post onsubmit="return formValidate(this)">




Nome del corso:

<input type=text name=nome_cdl size=100 maxlength=100 title="Nome del corso" ddv-required="true" ddv-maxlength="100">



Classe:

<input type=text name=classe size=10 maxlength=10 title="Classe del corso" ddv-required="true" ddv-maxlength="10">



Facolt&agrave; di riferimento del corso:

<input type=text name=facolta_riferimento size=100 maxlength=100 title="Facolt&agrave; di riferimento" ddv-required="true" ddv-maxlength="100">



Primo anno accademico di attivazione:

<input type=text name=anno_attivazione size=10 maxlength=10 title="Primo anno accademico di attivazione" ddv-required="true" ddv-maxlength="10">



Durata minima prevista per il corso (in anni):

<input type=text name=durata_minima size=10 maxlength=10 title="Durata minima prevista per il corso" ddv-required="true" ddv-maxlength="10">



Sede del corso:

<input type=text name=sede_cdl size=100 maxlength=100 title="Sede del corso" ddv-required="true" ddv-maxlength="100">



Responsabile del corso (509 art. 11 c.7 B):

<input type=text name=responsabile size=100 maxlength=100 title="Responsabile del corso" ddv-required="true" ddv-maxlength="100">



Comitato di gestione del corso (DM 8/5/01 art.4 allegato 11):

<textarea rows=10 cols=100 name=comitato_gestione title="Comitato di gestione del corso" ddv-required="true" ddv-maxlength="800"></textarea>



Segreteria didattica di riferimento per gli studenti del corso:

<input type=text name=segreteria_didattica size=100 maxlength=100 title="Segreteria didattica di riferimento" ddv-required="true" ddv-maxlength="100">



Obiettivi formativi specifici:

<textarea rows=10 cols=100 name=obiettivi_formativi title="Obiettivi formativi specifici" ddv-required="true" ddv-maxlength="800"></textarea>



Calendario delle attivit&agrave; didattiche (Link all'orario delle lezioni):

<input type=text name=link_orario_lezioni size=100 maxlength=200 title="Calendario delle attivit&agrave; didattiche" ddv-required="true" ddv-maxlength="200">



Conoscenze richieste per la selezione degli studenti in ingresso (se presente):

<textarea rows=20 cols=100 name=conoscenze_richieste title="Conoscenze richieste per la selezione" ddv-required="true" ddv-maxlength="3500"></textarea>



Conoscenza consigliate per gli studenti in ingresso:

<textarea rows=20 cols=100 name=conoscenze_consigliate title="Conoscenze consigliate" ddv-required="true" ddv-maxlength="3500"></textarea>



Caratteristiche della prova finale:

<textarea rows=10 cols=100 name=prova_finale title="Caratteristiche della prova finale" ddv-required="true" ddv-maxlength="800"></textarea>



Ambiti occupazionali per i laureati:

<textarea rows=10 cols=100 name=ambiti_occupazionali title="Ambiti occupazionali dei laureati" ddv-required="true" ddv-maxlength="800"></textarea>



Ordinamento didattico del corso di studi:

<textarea rows=10 cols=100 name=ordinamento_didattico title="Ordinamento didattico del corso" ddv-required="true" ddv-maxlength="800"></textarea>



Indirizzo web del CdS:

<input type=text name=indirizzo_web_cds size=100 maxlength=200 title="Indirizzo web del CdS" ddv-required="true" ddv-maxlength="200">



<input type=reset value=Cancella> <input type=submit name=submit value=Invia>
</p>
</form>

<?php
}
}
else //se i dati sono stati inviati tutti correttamente
{
//apro la connessione per inserire i dati
$conn = DB::connect($dsn);
if(DB::isError($conn)) die ("Errore durante la connessione: ".$conn->getMessage());

$var = array($_SESSION['codice_cdl'], $_SESSION['anno_rav']);
$query = "select * from modello_informativo where codice_cdl=? and anno_rav=?";
$res = $conn->query($query,$var);
if(DB::isError($res)) die ("Errore di query: ".$res->getMessage());

if($row = $res->fetchRow()) //se i dati sono già presenti
{
$var = array($_POST['nome_cdl'],$_POST['classe'],$_POST['facolta_riferimento'],$_POST['anno_attivazione'],$_POST['durata_minima'],$_POST['sede_cdl'],$_POST['responsabile'],$_POST['comitato_gestione'],$_POST['segreteria_didattica'],$_POST['obiettivi_formativi'],$_POST['link_orario_lezioni'],$_POST['conoscenze_richieste'],$_POST['conoscenze_consigliate'],$_POST['prova_finale'],$_POST['ambiti_occupazionali'],$_POST['ordinamento_didattico'],$_POST['indirizzo_web_cds'],$_SESSION['codice_cdl'],$_SESSION['anno_rav']);

$query = "update modello_informativo set nome_cdl=?, classe=?, facolta_riferimento=?, anno_attivazione=?, durata_minima=?, sede_cdl=?, responsabile=?, comitato_gestione=?, segreteria_didattica=?, obiettivi_formativi=?, link_orario_lezioni=?, conoscenze_richieste=?, conoscenze_consigliate=?, prova_finale=?, ambiti_occupazionali=?, ordinamento_didattico=?, indirizzo_web_cds=? where codice_cdl=? and anno_rav=?";

$res2 = $conn->query($query,$var); //aggiorno i dati presenti
if(!DB::isError($res2)) echo "

Dati aggiornati correttamente.</p>";
else die("Errore durante l'aggiornamento dei dati: ".$res->getMessage());
}
else //altrimenti
{
$var = array($_POST['nome_cdl'],$_POST['classe'],$_SESSION['codice_cdl'],$_SESSION['anno_rav'],$_POST['facolta_riferimento'],$_POST['anno_attivazione'],$_POST['durata_minima'],$_POST['sede_cdl'],$_POST['responsabile'],$_POST['comitato_gestione'],$_POST['segreteria_didattica'],$_POST['obiettivi_formativi'],$_POST['link_orario_lezioni'],$_POST['conoscenze_richieste'],$_POST['conoscenze_consigliate'],$_POST['prova_finale'],$_POST['ambiti_occupazionali'],$_POST['ordinamento_didattico'],$_POST['indirizzo_web_cds']);

$query = "insert into modello_informativo values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";

if(!DB::isError($conn->query($query,$var))) echo "

Dati inseriti correttamente nel database.</p>"; //inserisco i dati
else die("Errore durante l'inserimento dei dati: ".$conn->getMessage());
}

$conn->disconnect();
}

foot(); //chiudo la pagina
?>