Ciao a Tutti,
ho il seguente problema:
ho un Database di Access 2003, in cui ho creato un campo chiamato "Off_On" ,
* all' inizio l' ho definito come campo Si'/No, e ho provato a scegliere tutti iformati disponibili: Vero/Falso, Si/NO, On/Off
* ho poi provato a ridefinirlo come campo Numerico, mettendo 1 per record flaggato e 0 per record senza spunta ... NIENTE
Ho IIS e ho una pagina index.asp
Nella pagina index.asp ho la seguente sintassi: ho una form in cui richiamo valori presenti nel database nel seguente modo:
<%@ Language=VBScript %>
<% Option Explicit
Dim nr, objConn, objRS, objRS2, rec, strSQL
'
nr = 0
rec = 1
'
if trim(request("rec"))<>"" then rec = Request("rec")
%>
<html>
<head>
.....
<Script Language="JavaScript">
function notify(n) {
if (n==1) {
var answer = confirm("Save changes?")
if (answer) {
document.FrontPage_Form1.action = "mod_db.asp "
document.FrontPage_Form1.submit();
return true; } }
}
</script>
</head>
<body>
<%
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.ConnectionString = "DSN=pr.dsn"
objConn.Open
'
Set objRS2 = Server.CreateObject("ADODB.Recordset")
objRS2.Open "t_pr", objConn, , 3, 2
Do While Not objRS2.EOF
If (objRS2("Num") = Cint(rec)) Then
strSQL = "SELECT * FROM t_pr WHERE Num = " & rec
Set objRS = objConn.Execute(strSQL)
End If
objRS2.MoveNext
nr = nr + 1
Loop
'
%>
<div align="center">
<center>
<form method="POST" webbot-onSubmit language="JavaScript" name="FrontPage_Form1">
<table>
....
<textarea rows="2" id="description" name="description" cols="103"><%=objRS("Descrizione")%></textarea>
<input type="checkbox" name="flag" value="<%=objRS("Off_On")%> ">
<input type="submit" style="width:99;height:26" name="final" value="Final Version" onClick="notify(1)"></td>
</table></form>
</center>
</div>
<%
objRS.Close
objRS2.Close
objConn.Close
Set objConn = Nothing
%>
</body>
</html>
SE NEL DATABASE C' E' IL RECORD=2 CHE CONTIENE LA SPUNTA, OPPURE IL VALORE NUMERICO 1, NON RIESCO A RICHIAMARE LA SPUNTA NEL CAMPO CHECKBOX, COME DEVO FARE ???
Ho provato a mettere <%=cbool(objRS("Off_On"))%>
oppure <%=objRS("Off_On").Value%>
ma non riesco a richiamare il valore dal campo di Database e renderlo visibile nella pagina index.asp
INOLTRE
con il pulsante "Final Version" lancio la pagina mod_db.asp che mi consente di modificare i campi del form e le modifiche vengono messe nel Database ...
Per tutti i campi input text e textarea presenti nel form non c' e ' problema, e' che con il campo "Off_On" non riesco a mettere nel DataBase la spunta o l' 1 nel caso del flag...
come posso fare ???
Qui il codice della pagina mod_db.asp :
<%@ Language=VBScript %>
<%
Option Explicit
Dim objConn, objRS, rec
'
rec = Cint(Request.Form("rec_mod"))
'
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.ConnectionString = "DSN=pr.dsn"
objConn.Open
Set objRS = Server.CreateObject("ADODB.Recordset")
objRS.Open "t_pr", objConn, , 3, 2
'
Do While Not objRS.EOF
If (objRS("Num")=rec) Then
...
objRS("Descrizione") = Request.Form("description")
objRS("Off_On") = Request.Form("flag")
objRS.Update
End If
objRS.MoveNext
Loop
'
objRS.Close
Set objRS = Nothing
objConn.Close
Set objConn = Nothing
%>
<HTML>
<BODY>
......</BODY>
</HTML>
Grazie in anticipo dell' attenzione e dell' aiuto !!!

Rispondi quotando