OK I tried and I can't still manage it.
Here's the full scenario:
What I am building is a footy tipping (pool) competition app. What I am
trying to do is to allow lots of people to tip the winning team from a list
of games to be played every week. This schematic shoulf give an idea of the
tipping form:
Tipping Form
Date Time Home Team Visiting Team Tie
2 Aug, 03 7:00 PM England Fiji
2 Aug, 03 7:00 PM Fiji Australia
2 Aug, 03 7:00 PM New Zealand Australia
This is the datagrid my ASPX Page:
-------------------------------------------------------------------
<asp:datagrid id=DataGrid1 runat="server" Width="100%"
AutoGenerateColumns="False" DataMember="Table" DataKeyField="GameID"
DataSource="<%# dsMatchesForTipping1 %>" ForeColor="Black" GridLines="None"
CellPadding="2" BackColor="LightGoldenrodYellow" BorderWidth="0px"
BorderColor="Tan">
<Columns>
<asp:TemplateColumn SortExpression="GameID">
<ItemTemplate>
<input type="hidden" runat="server" name="GameID" id="GameID" value='<%#
DataBinder.Eval(Container.DataItem, "GameID") %>' />
</ItemTemplate>
</asp:TemplateColumn>
<asp:BoundColumn DataField="Date" SortExpression="Date" HeaderText="Date"
DataFormatString="{0:d MMM, yy}" />
<asp:BoundColumn DataField="Time" SortExpression="Time" HeaderText="Time"
DataFormatString="{0:t}" />
<asp:BoundColumn DataField="HomeTeamName" SortExpression="HomeTeamName"
HeaderText="Home Team" />
<asp:TemplateColumn SortExpression="HomeTeamID">
<ItemTemplate>
<INPUT id="radioButtonPickHomeTeam" runat="server" type="radio" value='<%#
DataBinder.Eval(Container.DataItem, "HomeTeamID") %>' name="Pick">
</ItemTemplate>
</asp:TemplateColumn>
<asp:BoundColumn DataField="VisitingTeamName"
SortExpression="VisitingTeamName" HeaderText="Visiting Team" />
<asp:TemplateColumn SortExpression="VisitingTeamID">
<ItemTemplate>
<INPUT id="radioButtonPickVisitingTeam" runat="server" type="radio"
value='<%# DataBinder.Eval(Container.DataItem, "VisitingTeamID") %>'
name="Pick">
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="Tie">
<ItemTemplate>
<INPUT id="radioButtonPickTie" runat="server" type="radio" value="Tie"
name="Pick">
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn SortExpression="UserEmail">
<ItemTemplate>
<input type="hidden" runat="server" name="UserEmail" id="UserEmail"
value="(e-mail address removed)" />
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:datagrid>
----------------------------------------------------------------------------
----
For the Code Behind Page:
----------------------------------------------------------------------------
------
private void Submit1_ServerClick(object sender, System.EventArgs e)
{
string[,] tippings = new string[,] {{"988", "AUS", "hhhty"}, {"56678",
"SA", "LfghghjLL"}, {"2367673", "NZ", "dfdfghgfjgfhf"}};
for (int i = 0; i <= tippings.Rank; i++) {
oleDbInsertCommand2.Parameters["GameID"].Value = tippings[i, 0];
oleDbInsertCommand2.Parameters["Pick"].Value = tippings[i, 1];
oleDbInsertCommand2.Parameters["Username"].Value = tippings[i, 2];
oleDbConnection1.Open();
oleDbInsertCommand2.ExecuteNonQuery();
oleDbConnection1.Close();
}
}
----------------------------------------------------------------------------
----------
Basically, if I am able to insert in the database the array "tippings"; then
I should be able to dynamically populate the "tippings" array and then
insert it into the database.
Unfortunately I am unable to do it ;-( and time isn't on my side either.
Any ideas?
SSP
Mike S said:
I'm not sure if I'm answering the question you are asking, but if you need
to create a dynamic array (to replace the static dummy array "string[,]
tippings") that is pretty simple:
name the all your input fields for each row the same (using a numerical
sequence for each extra row), when you submit, use something like:
// for loop
string[] row = Request.Form[ strPrefix +
iRowName.ToString() ].ToString.Split(", ");
AddRowToDB( row );
//end for loop
It would be a whole lot easier to do this using a DataGrid, DataSet,
DataAdapter, and relative Commands for the DataAdapter.
// Mike