webForumDet fria alternativet

Formulär (hjälp!)

.NETur .NET

3 svar · 340 visningar · startad av Ella

Medlem sedan mars 200927 inlägg
Frågan#1

Hej, är i akut behov av hjälp. Fullständig nybörjare på asp.net och försöker få till ett formulär som ser ut som nedan:

 
body>
        <form id="form1" action="index.aspx" name="index" runat="server" >
        <div class="stor">
        <asp:Label ID="Label1" runat="server" Text="Ange namn och email:"></asp:Label><br /><br />
        </div>
        <div class="liten">
        <asp:Label ID="Label2" runat="server" Text="Name:"></asp:Label>
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><br />
        <asp:Label ID="Label3" runat="server" Text="Email:"></asp:Label>
        <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox><br /><br />
        </div>
        <div class="stor">
        <asp:Label ID="Label4" runat="server" Text="Rösta på följande:"></asp:Label><br /><br />
        </div>
        <div class="liten">
        <asp:Label ID="Label5" runat="server" Text="Vilken efterrätt gillar du bäst?"></asp:Label><br />
        <asp:RadioButton ID="RadioButton1" Text="glass" Value="glass" runat="server" />
        <asp:RadioButton ID="RadioButton2" Text="godis" Value="godis" runat="server" />
        <asp:RadioButton ID="RadioButton3" Text="popcorn" Value="popcorn" runat="server" />
        <asp:RadioButton ID="RadioButton4" Text="chokladkaka" Value="chokladkaka" runat="server" />
        <asp:RadioButton ID="RadioButton5"  Text="Annat" Value="Annat"runat="server" />      
        <asp:TextBox ID="annat1" runat="server"></asp:TextBox><br /><br />
        <asp:Label ID="Label6" runat="server" Text="När äter du helst din efterrätt?"></asp:Label><br />
        <asp:RadioButton ID="RadioButton6" Text="lunch" Value="lunch" runat="server" />
        <asp:RadioButton ID="RadioButton7"  Text="middag" Value="middag" runat="server" />
        <asp:RadioButton ID="RadioButton8"  Text="kväll" Value="kväll" runat="server" />
        <asp:RadioButton ID="RadioButton9"  Text="Annat" Value="Annat" runat="server" />         
        <asp:TextBox ID="annat2" runat="server"></asp:TextBox><br /><br />
        <asp:Button ID="Button1" OnClick="submit" runat="server" Text="Skicka"  />
        </div>   
        </form>
    
</body>

Namn och email ska valideras med inga siffror i namnet och korrekt email-adress: (anar att det är helt galet):

<script type="text/javascript">
String.prototype.isValidEmail = function() {
return !!this.match(/^([a-zA-Z0-9]{1}([a-zA-Z0-9\.\-\_]*)[a-zA-Z0-9]{1})@([a-zA-Z0-9]{1}([a-zA-Z0-9\.\-\_]*)[a-zA-Z0-9]{1})\.([a-zA-Z]{2,4})$/)
}
function validateForm() {
if (document.f.TextBox1.value == "") {
alert("No numbers!");
return false;
} else if (!document.f.TextBox2.value.isValidEmail()) {
alert("Not correct email");
return false;
} else {
alert("Your vote is sent");
return true;
}
}
</script>

Detta ska sedan skickas till databasen och sedan ska den infon visas på en ny sida där man kan se namn och email på de som röstat och det ska även finnas en röstsammanställning som visar hur många röster vart alternativ har fått.

Ska fortsätta jobba på scriptet men hoppas på lite hjälp...eller mycket... :p

MVH // Ella

Medlem sedan okt. 2007446 inlägg
#2

ta en titt på de inbyggda valideringskontrollerna som finns i asp.net, de har även den fina finessen att datan blir validerad serverside om nu någon skulle stängt av javascript

http://quickstarts.asp.net/QuickStartv20/aspnet/doc/validation/default.aspx
i ditt fall så är det nog RegularExpressionValidator som verkar lämpligast, fast även RequiredFieldValidator kanske kan vara nyttig att ha med

Medlem sedan mars 200927 inlägg
#3

Tack! Fixade det nu lätt som en plätt med din hjälp...

Har ju en del kvar...:OO

Har hyffsad koll på databasen men inte hela vägen. Tänkte att med hjälp av
protected void btnSend_Click(object sender, EventArgs e)
{ så kan man skapa logiken om vilka radioknappar som är valda osv.}

DataSet ds = new DataSet();
MySqlConnection conn;
MySqlCommand cmd;
MySqlDataAdapter myAdapter;

conn = new MySqlConnection();
cmd = new MySqlCommand();
myAdapter = new MySqlDataAdapter();
MySqlCommandBuilder cb = new MySqlCommandBuilder(myAdapter);

conn.ConnectionString = "server=******;uid=******;" +
"pwd=******;database=******;";

cmd.CommandText = "SELECT * FROM vote"  (?)
cmd.Connection = conn;

myAdapter.SelectCommand = cmd;
myAdapter.Fill(ds, "votes");

DataRow dr = ds.Tables[0].NewRow();
//nya rader i databasen (hur ska mina tabeller se ut när allt ska lagras i databasen men svaren exempelvis ska summeras separat osv?	
dr["name"] = query stringen;
ds.Tables[0].Rows.Add(dr);

myAdapter.Update(ds, "Votes");
            
DataTable dt = ds.Tables[0];

foreach (DataRow dr1 in dt.Rows)
{
//Summering			    
}
Response.Write(Summeringen från ovan);

conn.Close();
	}
</script>

Som synes är det en del som fattas, men har problem att förstå vad jag ska skriva för att få allt att fungera.

kan inte ens klura ut hur min/a tabbel/er ska se ut...

MVH // Ella

Medlem sedan mars 200927 inlägg
#4

Eller ska jag flytta min fråga till ämnet SQL nu? // Ella

134 ms totalt · 3 externa anrop · v20260731065814-full.b746b907
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)