VB 2010 - Formulaire + SQL
Dernière réponse : dans Programmation
Bonjour à toutes et à tous,
Alors voila, je me lance dans le développement ASP.NET et je rencontre une petite difficultés.
Je me lance dans un projet de gestion de stock.
Je dispose d'une base de données : Stock avec une table "Article" avec 5 arguments ( Localisation, Nom, Quantité, Date et Commentaire ).
J'ai réussi à faire la partie "Consultation" qui retourne un tableau avec les valeurs de la base de données.
Cependant, j'aimerai que le client puisse ajouter un article.
Il va saisir les 5 attributs puis en cliquant sur "Ajouter" la requête SQL est générée et ajoute à la table les valeurs saisies.
Je fais donc appel à vous pour me débloquer.
Je pensais donc à une div contenant la saisie des attributs et le submit du genre :
<div class="attributs">
<h3>Localisation: </h3>
<input name="Localisation" type="text"/>
<h3>Nom: </h3>
<input name="Nom" type="text"/>
<h3>Quantite: </h3>
<input name="Quantite" type="text"/>
<h3>Date: </h3>
<input name="txtDate" type="text"/>
<h3>Commentaire: </h3>
<input name="Commentaire" type="text"/>
<input name="btnGo" type="submit" value="Go" />
</div>
Mais après comment renvoyé tout ceci en requete ?!
Les requêtes SQL c'est pas un problème, j'ai juste quelques difficultés à faire le lien entre lien entre les deux.
Merci d'avance
Alors voila, je me lance dans le développement ASP.NET et je rencontre une petite difficultés.
Je me lance dans un projet de gestion de stock.
Je dispose d'une base de données : Stock avec une table "Article" avec 5 arguments ( Localisation, Nom, Quantité, Date et Commentaire ).
J'ai réussi à faire la partie "Consultation" qui retourne un tableau avec les valeurs de la base de données.
Cependant, j'aimerai que le client puisse ajouter un article.
Il va saisir les 5 attributs puis en cliquant sur "Ajouter" la requête SQL est générée et ajoute à la table les valeurs saisies.
Je fais donc appel à vous pour me débloquer.
Je pensais donc à une div contenant la saisie des attributs et le submit du genre :
<div class="attributs">
<h3>Localisation: </h3>
<input name="Localisation" type="text"/>
<h3>Nom: </h3>
<input name="Nom" type="text"/>
<h3>Quantite: </h3>
<input name="Quantite" type="text"/>
<h3>Date: </h3>
<input name="txtDate" type="text"/>
<h3>Commentaire: </h3>
<input name="Commentaire" type="text"/>
<input name="btnGo" type="submit" value="Go" />
</div>
Mais après comment renvoyé tout ceci en requete ?!
Les requêtes SQL c'est pas un problème, j'ai juste quelques difficultés à faire le lien entre lien entre les deux.
Merci d'avance
Autres pages sur : 2010 formulaire sql
Lassé par la pub ? Créez un compte
Salut,
@allstar27: en ASP.Net, il n'y a pas de $_POST
@terrmarks: en ASP.NET, tu as déjà des contrôles qui sont quasiment tout fait pour faire ça.
Il faut que tu ajoutes une SqlDataSource à ta page ASP.NET, et en mode design, tu as un bouton pour la configurer.
Ensuite, tu peux ajouter un DetailsView sur ta page et le lier à ta SqlDataSource, et les champs vont être générés automatiquement.
@allstar27: en ASP.Net, il n'y a pas de $_POST
@terrmarks: en ASP.NET, tu as déjà des contrôles qui sont quasiment tout fait pour faire ça.
Il faut que tu ajoutes une SqlDataSource à ta page ASP.NET, et en mode design, tu as un bouton pour la configurer.
Ensuite, tu peux ajouter un DetailsView sur ta page et le lier à ta SqlDataSource, et les champs vont être générés automatiquement.
Merci beaucoup Omar pour l'idée !
J'ai découvert le ListView et faire un peu comme sur ce tutoriel : http://msdn.microsoft.com/fr-fr/library/bb515103.aspx
Cependant il m'est impossible de réaliser cette étape :
Activez la case à cocher Générer des instructions INSERT, UPDATE et DELETE, puis cliquez sur OK.
Les zones sont grisés :
![]()
Est ce que vous avez une idée du pourquoi du comment ?!
Car c'est exactement ce qu'il me fallait
Merci d'avance
J'ai découvert le ListView et faire un peu comme sur ce tutoriel : http://msdn.microsoft.com/fr-fr/library/bb515103.aspx
Cependant il m'est impossible de réaliser cette étape :
Activez la case à cocher Générer des instructions INSERT, UPDATE et DELETE, puis cliquez sur OK.
Les zones sont grisés :

Est ce que vous avez une idée du pourquoi du comment ?!
Car c'est exactement ce qu'il me fallait
Merci d'avance
Une ListView n'est peut être pas ce que tu veux aussi... si tu veux une GridView, utilise une GridView, c'est le même principe pour la DataSource, tu peux binder la GridView à une SqlDataSource et faire exactement la même chose.
La GridView te permet même de faire de l'édition/suppression en direct dans la table, et tu peux modifier le format d'affichage de tes données, le format d'édition, etc...
La GridView te permet même de faire de l'édition/suppression en direct dans la table, et tu peux modifier le format d'affichage de tes données, le format d'édition, etc...
Me revoilà !
Grâce à la GridView et les configurations qui vont bien, j'ai réussi à faire mon edition et supression de données avec le même affichage.
Cependant, je ne comprends pas pourquoi le GridView ne propose pas directement la fonction insertion. J'ai vu sur le net que cela était possible mais je n'en ai pas compris la méthode ... :x
Est ce que vous connaissez le moyen de faire cela ?
Ou alors, quel outil me permettrait d'obtenir le résultat que je souhaite ?
Merci d'avance pour vos aides
Grâce à la GridView et les configurations qui vont bien, j'ai réussi à faire mon edition et supression de données avec le même affichage.
Cependant, je ne comprends pas pourquoi le GridView ne propose pas directement la fonction insertion. J'ai vu sur le net que cela était possible mais je n'en ai pas compris la méthode ... :x
Est ce que vous connaissez le moyen de faire cela ?
Ou alors, quel outil me permettrait d'obtenir le résultat que je souhaite ?
Merci d'avance pour vos aides
En effet, il faut utiliser un "hack" pour pouvoir utiliser la fonction INSERT.
Généralement, ce qu'on fait, c'est qu'on propose un formulaire à côté (FormView de mémoire) où il est pratique d'insérer les données.
Sinon, ce qui se fait aussi, c'est de mettre la fonction d'INSERT dans le footer de la GridView, mais ça oblige à ajouter toutes les TextBox à la main, ainsi que les contrôles de validation.
Tu peux regarder ici si l'anglais ne te fais pas trop peur (bon, c'est principalement du code, donc ça devrait aller, il y a juste quelques explications au départ sur ce qui doit être fait) :
http://geekswithblogs.net/casualjim/articles/51360.aspx
Généralement, ce qu'on fait, c'est qu'on propose un formulaire à côté (FormView de mémoire) où il est pratique d'insérer les données.
Sinon, ce qui se fait aussi, c'est de mettre la fonction d'INSERT dans le footer de la GridView, mais ça oblige à ajouter toutes les TextBox à la main, ainsi que les contrôles de validation.
Tu peux regarder ici si l'anglais ne te fais pas trop peur (bon, c'est principalement du code, donc ça devrait aller, il y a juste quelques explications au départ sur ce qui doit être fait) :
http://geekswithblogs.net/casualjim/articles/51360.aspx
J'avais déjà vu cette démarche, mais j'avais un peu pris peur, je me suis lancé, cependant j'ai comparé mon code et celui présent dans le lien.
Je remarque qu'il faut que je déclare un ItemTemplate
Mais VisalBasic 2010 ne reconnait pas cette méthode :x
Voici l'erreur retournée lorsque je lance mon code :
Le type 'System.Web.UI.WebControls.GridView' ne possède pas de propriété publique appelée 'ItemTemplate
Et j'ai remarqué que le LinkButton est rappelé de nombreuses fois donc indispensable.
Est ce que parce que je n'ai pas encoré intégré le code source présent à la fin ?
Dois-je l'intégré comme dans le lien ? Après ma dernière balise ASP ?
Merci pour ton aide
Je remarque qu'il faut que je déclare un ItemTemplate
<ItemTemplate>
<asp:LinkButton ID="lbEdit" runat="server" CausesValidation="False" CommandName="Edit”
Text="Edit" >asp:LinkButton> <asp:LinkButton ID="lbDelete" runat="server"
CausesValidation="False" CommandName="Delete" Text="Delete">asp:LinkButton>
</ItemTemplate>
Mais VisalBasic 2010 ne reconnait pas cette méthode :x
Voici l'erreur retournée lorsque je lance mon code :
Le type 'System.Web.UI.WebControls.GridView' ne possède pas de propriété publique appelée 'ItemTemplate
Et j'ai remarqué que le LinkButton est rappelé de nombreuses fois donc indispensable.
Est ce que parce que je n'ai pas encoré intégré le code source présent à la fin ?
protected void lbInsert_Click(object sender, EventArgs e)
{
odsIngredient.Insert();
}
protected void LinkButton2_Click(object sender, EventArgs e)
{
((TextBox)gvIngredient.FooterRow.FindControl("tbIngredient")).Text = "";
((TextBox)gvIngredient.FooterRow.FindControl("tbStock")).Text = "";
((TextBox)gvIngredient.FooterRow.FindControl("tbMinStock")).Text = "";
}
protected void odsIngredient_Inserting(object sender, ObjectDataSourceMethodEventArgs e)
{
string Ingredient = ((TextBox)gvIngredient.FooterRow.FindControl("tbIngredient")).Text;
string stock = ((TextBox)gvIngredient.FooterRow.FindControl("tbStock")).Text;
string minstock = ((TextBox)gvIngredient.FooterRow.FindControl("tbMinStock")).Text;
e.InputParameters["ProductIngredient_Name"] = Ingredient;
e.InputParameters["ProductIngredient_Stock"] = stock;
e.InputParameters["ProductIngredient_MinStock"] = minstock;
}
Dois-je l'intégré comme dans le lien ? Après ma dernière balise ASP ?
Merci pour ton aide
Le <ItemTemplate> se trouve dans <Columns>, et non pas à la racine de <asp:GridView>
Il faut que tu aies:
Et pour le code, c'est pour gérer le clics sur les boutons. Tu auras quelques modifications à faire afin de récupérer tes propres contrôles (le FindControl), et de le faire pour toutes tes données.
Et tu stockeras ça dans le e.InputParameters comme là, tout en gardant les noms des colonnes dans ta base de données.
Il faut que tu aies:
<asp:GridView ...>
<Columns>
<ItemTemplate>...</ItemTemplate>
</Columns>
</asp:GridView>
Et pour le code, c'est pour gérer le clics sur les boutons. Tu auras quelques modifications à faire afin de récupérer tes propres contrôles (le FindControl), et de le faire pour toutes tes données.
Et tu stockeras ça dans le e.InputParameters comme là, tout en gardant les noms des colonnes dans ta base de données.
Lassé par la pub ? Créez un compte
- Contenus similaires :
Tags :
- ForumCreer une echantillotheque avec vb 2010
- ForumLabels vb 2010 express
- solutionsVb 2010 chaine guillemet
- ForumCreer une application avec vb 2010
- ForumProgramme vb 2010
- ForumFormulaire sql
- ForumVb et sql server
- ForumProbleme de requete sql avec vb
- ForumVb requete sql access
- ForumRequete sql dans vb access
- Voir plus