Cari ragazzi,
finalmente dopo ore passate ad impazzire, sono riuscito a creare questa pagina che stampa dei dati da un campo di un db access ed accanto ad ogni dato stampato mette un checkbox. A questo punto selezionando uno o più checkbox e premendo sul bottone in basso, vengono stampati i singoli valori dei check selezionati (cioè del campo del db).
Naturalmente con questa pagina possiamo fare tante cose, esempio mandare una mail a tutti quelli checcati, cancellare quelli checcati ecc...
Capisco che per molti di questo forum possa sembrare una cosa molto banale, ma sono sicuro che tanti altri come me (alle prime armi) possano trovare in questo codice un ottimo aiuto. Grazie
ECCO IL CODICE COMPLETO:
<%@ Page Language="vb" Debug="true" %>
<%@ import namespace="system.data" %>
<%@ import namespace="system.data.oledb"%>
<%@ import namespace="system.web.mail" %>
<script language="VB" runat="server">
Sub Page_Load ()
If Not Page.IsPostBack Then
Dim objconn As OleDbConnection
Dim myDataAdapter As OleDbDataAdapter
objconn = New OleDbConnection("provider=microsoft.jet.OLEDB.4.0; data source=" & Server.MapPath("banca.mdb"))
myDataAdapter = new OleDbDataAdapter ("select * from anagrafici", objconn)
dim ds as dataset=new dataset()
mydataadapter.fill(ds,"anagrafici")
mydatagrid.datasource=ds.tables("anagrafici").defa ultview
databind()
end if
end sub
dim sel as system.web.ui.webcontrols.checkbox
dim i as integer
dim mydatagriditem as datagriditem
dim items
dim st as string
sub Scrivi_valore(byval sender As Object, byval e As EventArgs)
for each mydatagriditem in mydatagrid.items
sel = mydatagriditem.findcontrol("a")
if sel.checked then
st=ctype(mydatagriditem.findcontrol("val"),label). text
response.write (st)
end if
next
End sub
</script>
<html>
<body>
<form runat="server">
<aspataGrid ID="MyDataGrid" RunAt="server"
AutoGenerateColumns="false" CellPadding="2"
BorderWidth="1" BorderColor="lightgray"
Font-Name="Verdana" Font-Size="8pt"
GridLines="vertical" Width="100%">
<Columns>
<asp:TemplateColumn HeaderText="nome"
ItemStyle-HorizontalAlign="center">
<ItemTemplate>
<asp:label id="nome" text='<%#databinder.eval(container.dataitem,"nome" )%>' runat="server"/>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="checkbox"
ItemStyle-HorizontalAlign="center">
<ItemTemplate>
<asp:CheckBox RunAt="server" id="a" />
<asp:label id="val" Visible="false" text='<%#databinder.eval(container.dataitem,"nome" )%>' runat="server"/>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
<HeaderStyle BackColor="teal" ForeColor="white"
Font-Bold="true" HorizontalAlign="center" />
<ItemStyle BackColor="white" ForeColor="darkblue" />
<AlternatingItemStyle BackColor="beige" ForeColor="darkblue" />
</aspataGrid>
<asp:Button Text="Check Out" OnClick="scrivi_valore" RunAt="server" />
<asp:Label ID="Output" RunAt="server" />
</form>
</body>
</html>