Problème compréhension code
Bonjour,
Je suis stagiaire dans une boite d'intérim, et les différents buts de mon stage sont de leur faire une appli web de gestion des contacts/rdv/etc. ainsi que d'apprendre la programmation web en VB/ASP.net.
J'ai un mal de chien pour le moment à comprendre pourquoi le code ne passe jamais par l'endroit que j'ai choisi.
Un peu de code d'abord :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
<%@ Page Title="Qui sommes-nous" Language="vb" MasterPageFile="~/Site.Master" AutoEventWireup="false"
CodeBehind="About.aspx.vb" Inherits="WebApplication2.About" %>
<script runat="server">
Private Sub InsertClient (ByVal Source As Object, ByVal e As EventArgs)
SqlDataSource4.Insert()
End Sub
</script>
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<div id="FormulaireAjoutProspect" align="center">
<asp:SqlDataSource ID="SqlDataSource4" runat="server"
ConnectionString="<%$ ConnectionStrings:schema_crmConnectionString %>"
InsertCommand="INSERT INTO client (idClient, nomCompteClient, telCentral, typeCompte, FK_gestCompte) VALUES ('5','encoreuntest', '118218', 'Client', 1);"
ProviderName="<%$ ConnectionStrings:schema_crmConnectionString.ProviderName %>"
SelectCommand="SELECT * FROM client;"></asp:SqlDataSource>
<table style="width:100%;">
<tr>
<td style="height: 29px; width: 200px;" align="right" width="100">
Nom</td>
<td style="height: 29px; width: 200px;" align="left" width="150">
<input id="Text1" type="text" /></td>
</tr>
</table>
<input id="Submit1" type="submit" value="Ajouter" style="width: 145px" onclick="InsertClient" />
</div>
</p>
</asp:Content> |
Ma question : lorsque j’appuie sur le bouton "ajouter", j'aimerais qu'il rentre dans la fonction "InsertClient" (tout en haut du code^^). Pourquoi il ne le fait pas? Qu'ai-je mal fait?
Si j'arrive à rentrer dans cette fonction, exécutera-t'il la requête SQL que j'ai mise (pour test)?
Bonus :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
<asp:SqlDataSource ID="SqlDataSource4" runat="server"
ConnectionString="<%$ ConnectionStrings:schema_crmConnectionString %>"
InsertCommand="INSERT INTO client (idClient, nomCompteClient, telCentral, typeCompte, FK_gestCompte) VALUES ('?','@NomClient', '118218', 'Client', 1);"
ProviderName="<%$ ConnectionStrings:schema_crmConnectionString.ProviderName %>"
SelectCommand="SELECT * FROM client;">
<InsertParameters>
<asp:Parameter NomClient="Text1" Type="String" />
</InsertParameters>
</asp:SqlDataSource> |
Est-ce que ceci suffit pour que dans la BD, "nomCompteClient" soit rempli par la valeur que j'ai insérée dans le champ text1?
Par quoi dois-je remplacer le '?' pour que l'idClient soit automatiquement incrémenté par la DB? (paramétrée pour que la clé primaire soit un ID auto-incrémenté). Dois-je simplement laisser ce champ vide?