begin process at 2012 05 28 02:45:05
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive ASP & ASP.NET

 > 

Archives ASP & ASP.NET

 > 

Base de données

 > 

Modification d'un enregistrement dans une bd


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Modification d'un enregistrement dans une bd

vendredi 13 février 2004 à 16:04:24 | Modification d'un enregistrement dans une bd

reyterg

Bonjour à tous

Après la suppression d'un enregistrement dans une bd pas plus tard qu'hier (merci à Fabrice pour son aide ), la suite logique est de faire la modification dans la base.

J'ai réalisé un listing de mes enregistrements, quand je clique sur un enregistrement celui-ci va sur une page ASP où des champs de textes accueillent les informations détenues dans la base.

Je coince à partir du moment où je dois envoyer les modifications dans la base.

Pour info car je ne sais pas si c'est important, mais id est un nombre.

Voici mon code (partiel) pour cette page:


<%var_id = Request.Querystring("reference")%>

<%
Const adOpenKeyset = 1
Const adLockOptimistic = 3
Set Con = Server.CreateObject("ADODB.Connection")
con.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../")&"/databases/bd.mdb;"
Set Rs = Server.CreateObject("ADODB.Recordset")





id_bis= Request.Form("id")
nom_bis= Request.Form("nom")
prenom_bis= Request.Form("prenom")
mail_bis= Request.Form("mail")




RequeteSQL = "Update annmoto Set nom='"&nom_bis&"',prenom='"&prenom_bis&"',mail='"&mail_bis&"' WHERE id='"&id_bis&"';"
Rs.Open RequeteSQL , Con%>





<%
Rs.Close
set Rs = Nothing

con.Close
set con = Nothing
%>




L'erreur provoquée est celle-ci :

Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

[Microsoft][Pilote ODBC Microsoft Access] Type de données incompatible dans l'expression du critère.

/modif_exe_ann_moto_wm.asp, line 40


et voici la ligne d'erreur (ligne 40):

Rs.Open RequeteSQL , Con
mais je pense plutôt que le problème se trouve une ligne plus haut



Merci à tous ceux qui essayeront de faire tourner ce code chatouilleur.

Greg
vendredi 13 février 2004 à 16:40:02 | Re : Modification d'un enregistrement dans une bd

Bud

Hello

2 lignes à changer...

id_bis= cLng(Request.Form("id"))

et

RequeteSQL = "Update annmoto Set nom='" & nom_bis & "',prenom='" & prenom_bis & "',mail='" & mail_bis & "' WHERE id=" & id_bis & ";"
lundi 16 février 2004 à 15:39:25 | Re : Modification d'un enregistrement dans une bd

reyterg


Merci Bud,

mais ce n'est pas suffisant, il me donne toujours une erreur.

Je viens de simplifier le nombre des champs de texte histoire de réduire les fautes de programmations bégnines. ça vient peut-être aussi des autres pages. Voici les codes:

Page de listing :


<%
Const adOpenKeyset = 1
Const adLockOptimistic = 3
Set Con = Server.CreateObject("ADODB.Connection")
con.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../")&"/databases/bd.mdb;"
Set rst = Server.CreateObject("ADODB.Recordset")
rst.open "SELECT * FROM annmoto ORDER BY date_parution DESC;", con, adOpenKeyset, adLockOptimistic
%>




<%while (not rst.EOF) %>
<table width="100%">
<tr>
<td width="20%">
<div align="center"><a href="modif_ann_moto_wm.asp?reference=<%=Rst("id")%>">Modifier</a>
</div>
<div align="center"></div></td>
<td width="20%">
<div align="center"><%=rst("date_parution")%></font></div></td>
<td width="20%"><a href="recup_formulaire.asp?id=<%=rst("id")%>">
<div align="center"><%=rst("nom")%></div>
</a></td>
<td width="20%"><a href="recup_formulaire.asp?id=<%=rst("id")%>">
<div align="center"><%=rst("prenom")%></div>
</a></td>
<td width="16%"><a href="recup_formulaire.asp?id=<%=rst("id")%>">
<div align="center"><%=rst("mail")%></div>
</a></td>
</tr>
<%rst.movenext
wend%>
</table>



Code de la page de modif des champs:


<%var_id = Request.Querystring("reference")%>


<%
Const adOpenKeyset = 1
Const adLockOptimistic = 3
Set Con = Server.CreateObject("ADODB.Connection")
con.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../")&"/databases/bd.mdb;"
Set rst = Server.CreateObject("ADODB.Recordset")
rst.open "SELECT * FROM annmoto WHERE id =" & var_id &";", con, adOpenKeyset, adLockOptimistic
%>




<form action="modif_exe_ann_moto_wm.asp" method="post" name="form2">
<td width="50%" height="114">
<div align="left"><font color="#000000">id<br>
</font>
<input name="id" type="text" id="id" value="<%=Rst("id")%>">
<br>
Nom:</font><br>
<input name="nom" type="text" id="nom" value="<%=Rst("nom")%>">
<br>
Prénom: </font><br>
<input name="prenom" type="text" id="prenom" value="<%=Rst("prenom")%>">
<br>
Adresse E-mail:<br>
<input name="mail" type="text" id="mail" value="<%=Rst("mail")%>">
<input type="hidden" Name="id" Value="<%=id%>">
<p align="center">
<input name="Submit" type="submit" value="Envoyer la modification">
</div></td></form>



Page d'exécution des modifications:


<%
Const adOpenKeyset = 1
Const adLockOptimistic = 3
Set Con = Server.CreateObject("ADODB.Connection")
con.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../")&"/databases/bd.mdb;"
Set Rs = Server.CreateObject("ADODB.Recordset")


id_bis= Request.Form("id")
nom_bis= Request.Form("nom")
prenom_bis= Request.Form("prenom")
mail_bis= Request.Form("mail")


RequeteSQL = "Update annmoto Set nom='" & nom_bis & "',prenom='" & prenom_bis & "',mail='" & mail_bis & "' WHERE id=" & id_bis & ";"
Rs.Open RequeteSQL ,con%>



il me dit qu'il y a une erreur de syntaxe (une virgule)au niveau de la ligne :
RequeteSQL = "Update annmoto Set nom='" & nom_bis & "',prenom=...


Merci à vous.

Greg
lundi 16 février 2004 à 15:39:29 | Re : Modification d'un enregistrement dans une bd

reyterg


Merci Bud,

mais ce n'est pas suffisant, il me donne toujours une erreur.

Je viens de simplifier le nombre des champs de texte histoire de réduire les fautes de programmations bégnines. ça vient peut-être aussi des autres pages. Voici les codes:

Page de listing :


<%
Const adOpenKeyset = 1
Const adLockOptimistic = 3
Set Con = Server.CreateObject("ADODB.Connection")
con.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../")&"/databases/bd.mdb;"
Set rst = Server.CreateObject("ADODB.Recordset")
rst.open "SELECT * FROM annmoto ORDER BY date_parution DESC;", con, adOpenKeyset, adLockOptimistic
%>




<%while (not rst.EOF) %>
<table width="100%">
<tr>
<td width="20%">
<div align="center"><a href="modif_ann_moto_wm.asp?reference=<%=Rst("id")%>">Modifier</a>
</div>
<div align="center"></div></td>
<td width="20%">
<div align="center"><%=rst("date_parution")%></font></div></td>
<td width="20%"><a href="recup_formulaire.asp?id=<%=rst("id")%>">
<div align="center"><%=rst("nom")%></div>
</a></td>
<td width="20%"><a href="recup_formulaire.asp?id=<%=rst("id")%>">
<div align="center"><%=rst("prenom")%></div>
</a></td>
<td width="16%"><a href="recup_formulaire.asp?id=<%=rst("id")%>">
<div align="center"><%=rst("mail")%></div>
</a></td>
</tr>
<%rst.movenext
wend%>
</table>



Code de la page de modif des champs:


<%var_id = Request.Querystring("reference")%>


<%
Const adOpenKeyset = 1
Const adLockOptimistic = 3
Set Con = Server.CreateObject("ADODB.Connection")
con.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../")&"/databases/bd.mdb;"
Set rst = Server.CreateObject("ADODB.Recordset")
rst.open "SELECT * FROM annmoto WHERE id =" & var_id &";", con, adOpenKeyset, adLockOptimistic
%>




<form action="modif_exe_ann_moto_wm.asp" method="post" name="form2">
<td width="50%" height="114">
<div align="left"><font color="#000000">id<br>
</font>
<input name="id" type="text" id="id" value="<%=Rst("id")%>">
<br>
Nom:</font><br>
<input name="nom" type="text" id="nom" value="<%=Rst("nom")%>">
<br>
Prénom: </font><br>
<input name="prenom" type="text" id="prenom" value="<%=Rst("prenom")%>">
<br>
Adresse E-mail:<br>
<input name="mail" type="text" id="mail" value="<%=Rst("mail")%>">
<input type="hidden" Name="id" Value="<%=id%>">
<p align="center">
<input name="Submit" type="submit" value="Envoyer la modification">
</div></td></form>



Page d'exécution des modifications:


<%
Const adOpenKeyset = 1
Const adLockOptimistic = 3
Set Con = Server.CreateObject("ADODB.Connection")
con.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../")&"/databases/bd.mdb;"
Set Rs = Server.CreateObject("ADODB.Recordset")


id_bis= Request.Form("id")
nom_bis= Request.Form("nom")
prenom_bis= Request.Form("prenom")
mail_bis= Request.Form("mail")


RequeteSQL = "Update annmoto Set nom='" & nom_bis & "',prenom='" & prenom_bis & "',mail='" & mail_bis & "' WHERE id=" & id_bis & ";"
Rs.Open RequeteSQL ,con%>



il me dit qu'il y a une erreur de syntaxe (une virgule)au niveau de la ligne :
RequeteSQL = "Update annmoto Set nom='" & nom_bis & "',prenom=...


Merci à vous.

Greg
lundi 16 février 2004 à 15:40:19 | Re : Modification d'un enregistrement dans une bd

reyterg


Merci Bud,

mais ce n'est pas suffisant, il me donne toujours une erreur.

Je viens de simplifier le nombre des champs de texte histoire de réduire les fautes de programmations bégnines. ça vient peut-être aussi des autres pages. Voici les codes:

Page de listing :


<%
Const adOpenKeyset = 1
Const adLockOptimistic = 3
Set Con = Server.CreateObject("ADODB.Connection")
con.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../")&"/databases/bd.mdb;"
Set rst = Server.CreateObject("ADODB.Recordset")
rst.open "SELECT * FROM annmoto ORDER BY date_parution DESC;", con, adOpenKeyset, adLockOptimistic
%>




<%while (not rst.EOF) %>
<table width="100%">
<tr>
<td width="20%">
<div align="center"><a href="modif_ann_moto_wm.asp?reference=<%=Rst("id")%>">Modifier</a>
</div>
<div align="center"></div></td>
<td width="20%">
<div align="center"><%=rst("date_parution")%></font></div></td>
<td width="20%"><a href="recup_formulaire.asp?id=<%=rst("id")%>">
<div align="center"><%=rst("nom")%></div>
</a></td>
<td width="20%"><a href="recup_formulaire.asp?id=<%=rst("id")%>">
<div align="center"><%=rst("prenom")%></div>
</a></td>
<td width="16%"><a href="recup_formulaire.asp?id=<%=rst("id")%>">
<div align="center"><%=rst("mail")%></div>
</a></td>
</tr>
<%rst.movenext
wend%>
</table>



Code de la page de modif des champs:


<%var_id = Request.Querystring("reference")%>


<%
Const adOpenKeyset = 1
Const adLockOptimistic = 3
Set Con = Server.CreateObject("ADODB.Connection")
con.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../")&"/databases/bd.mdb;"
Set rst = Server.CreateObject("ADODB.Recordset")
rst.open "SELECT * FROM annmoto WHERE id =" & var_id &";", con, adOpenKeyset, adLockOptimistic
%>




<form action="modif_exe_ann_moto_wm.asp" method="post" name="form2">
<td width="50%" height="114">
<div align="left"><font color="#000000">id<br>
</font>
<input name="id" type="text" id="id" value="<%=Rst("id")%>">
<br>
Nom:</font><br>
<input name="nom" type="text" id="nom" value="<%=Rst("nom")%>">
<br>
Prénom: </font><br>
<input name="prenom" type="text" id="prenom" value="<%=Rst("prenom")%>">
<br>
Adresse E-mail:<br>
<input name="mail" type="text" id="mail" value="<%=Rst("mail")%>">
<input type="hidden" Name="id" Value="<%=id%>">
<p align="center">
<input name="Submit" type="submit" value="Envoyer la modification">
</div></td></form>



Page d'exécution des modifications:


<%
Const adOpenKeyset = 1
Const adLockOptimistic = 3
Set Con = Server.CreateObject("ADODB.Connection")
con.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../")&"/databases/bd.mdb;"
Set Rs = Server.CreateObject("ADODB.Recordset")


id_bis= Request.Form("id")
nom_bis= Request.Form("nom")
prenom_bis= Request.Form("prenom")
mail_bis= Request.Form("mail")


RequeteSQL = "Update annmoto Set nom='" & nom_bis & "',prenom='" & prenom_bis & "',mail='" & mail_bis & "' WHERE id=" & id_bis & ";"
Rs.Open RequeteSQL ,con%>



il me dit qu'il y a une erreur de syntaxe (une virgule)au niveau de la ligne :
RequeteSQL = "Update annmoto Set nom='" & nom_bis & "',prenom=...


Merci à vous.

Greg
lundi 16 février 2004 à 15:40:45 | Re : Modification d'un enregistrement dans une bd

reyterg


Merci Bud,

mais ce n'est pas suffisant, il me donne toujours une erreur.

Je viens de simplifier le nombre des champs de texte histoire de réduire les fautes de programmations bégnines. ça vient peut-être aussi des autres pages. Voici les codes:

Page de listing :


<%
Const adOpenKeyset = 1
Const adLockOptimistic = 3
Set Con = Server.CreateObject("ADODB.Connection")
con.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../")&"/databases/bd.mdb;"
Set rst = Server.CreateObject("ADODB.Recordset")
rst.open "SELECT * FROM annmoto ORDER BY date_parution DESC;", con, adOpenKeyset, adLockOptimistic
%>




<%while (not rst.EOF) %>
<table width="100%">
<tr>
<td width="20%">
<div align="center"><a href="modif_ann_moto_wm.asp?reference=<%=Rst("id")%>">Modifier</a>
</div>
<div align="center"></div></td>
<td width="20%">
<div align="center"><%=rst("date_parution")%></font></div></td>
<td width="20%"><a href="recup_formulaire.asp?id=<%=rst("id")%>">
<div align="center"><%=rst("nom")%></div>
</a></td>
<td width="20%"><a href="recup_formulaire.asp?id=<%=rst("id")%>">
<div align="center"><%=rst("prenom")%></div>
</a></td>
<td width="16%"><a href="recup_formulaire.asp?id=<%=rst("id")%>">
<div align="center"><%=rst("mail")%></div>
</a></td>
</tr>
<%rst.movenext
wend%>
</table>



Code de la page de modif des champs:


<%var_id = Request.Querystring("reference")%>


<%
Const adOpenKeyset = 1
Const adLockOptimistic = 3
Set Con = Server.CreateObject("ADODB.Connection")
con.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../")&"/databases/bd.mdb;"
Set rst = Server.CreateObject("ADODB.Recordset")
rst.open "SELECT * FROM annmoto WHERE id =" & var_id &";", con, adOpenKeyset, adLockOptimistic
%>




<form action="modif_exe_ann_moto_wm.asp" method="post" name="form2">
<td width="50%" height="114">
<div align="left"><font color="#000000">id<br>
</font>
<input name="id" type="text" id="id" value="<%=Rst("id")%>">
<br>
Nom:</font><br>
<input name="nom" type="text" id="nom" value="<%=Rst("nom")%>">
<br>
Prénom: </font><br>
<input name="prenom" type="text" id="prenom" value="<%=Rst("prenom")%>">
<br>
Adresse E-mail:<br>
<input name="mail" type="text" id="mail" value="<%=Rst("mail")%>">
<input type="hidden" Name="id" Value="<%=id%>">
<p align="center">
<input name="Submit" type="submit" value="Envoyer la modification">
</div></td></form>



Page d'exécution des modifications:


<%
Const adOpenKeyset = 1
Const adLockOptimistic = 3
Set Con = Server.CreateObject("ADODB.Connection")
con.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../../")&"/databases/bd.mdb;"
Set Rs = Server.CreateObject("ADODB.Recordset")


id_bis= Request.Form("id")
nom_bis= Request.Form("nom")
prenom_bis= Request.Form("prenom")
mail_bis= Request.Form("mail")


RequeteSQL = "Update annmoto Set nom='" & nom_bis & "',prenom='" & prenom_bis & "',mail='" & mail_bis & "' WHERE id=" & id_bis & ";"
Rs.Open RequeteSQL ,con%>



il me dit qu'il y a une erreur de syntaxe (une virgule)au niveau de la ligne :
RequeteSQL = "Update annmoto Set nom='" & nom_bis & "',prenom=...


Merci à vous.

Greg
jeudi 3 février 2005 à 14:36:20 | Re : Modification d'un enregistrement dans une bd

malhivertman1

tu devré l'ecrire encor plus de foi


Cette discussion est classée dans : base, bd, enregistrement, code, modification


Répondre à ce message

Sujets en rapport avec ce message

Ajout Enregistrement BD [ par dan05 ] Salut à tous,j'ai une requete de ce type :SQLQuery= "INSERT INTO annuaire (Nom, Prenom, Societe) "SQLQuery= SQLQuery & "VALUES( '" &Nom& "','"&Prenom& Base de donné. Mon code ne marche pas [ par kikim ] Salut tout le monde, j'ai un etit probléme avec ce code.Quand j'essai de l'appliquer j'ai une erreur au niveau de la ligne :Dim TabNom_ASP (RS.RecordC Base de données [ par Jiri ] Bonjour,J'ai une table qui contient 1000 enregistrement, je veux que lorsqu'un utilisateur reçoit 50 enregistrement par page de consultation, c à d Co Modification d'un élément dans une base de donnée [ par onha ] Bonjour,Bon voilà, j'ai une base de donnée sous access.J'ai récupéré un script pour permettre la modification d'un élément dans une base de donnée. Le aspsmartupload [ par rony ] bjr,j'utilise aspsmatupload pour uploader des fichiers dans ma basele nom des fichiers est corectemnt inscrit.mais je n'arrive pas à ajouter la valeur Code pour calculer temps [ par Zeus ] Je recherche du code pour calculer le temps que prend une requête a interroger une base de donnees pour comparer la rapiditer de différent codes qui a modification du contenu de ma base = erreur '80040e14' [ par jpeg ] Je veux modifier ma base Access en ligne.J'ai choisi la POSTPour créer c'est O.KPour supprimer c'est O.K mais pour modifier j'ai le message d'erreur Comment transférer des données entre 2 BD SQL Server 7 ??? [ par klotze ] Salut à tous, J'ai un grand problème, il faut que je mette à jour des données d'une base de données installées sur un serveur Server1 à partir d Mise à jour de BD SQL Server 7 [ par klotze ] Salut à tous, J'ai un grand problème, il faut que je mette à jour des données d'une base de données installées sur un serveur Server1 à partir d Créer une base de donnée [ par Niaphron ] Je voudrais savoir si il y a un moyen en ASP, de crée une base de donnée par l'intermédiaire d'un code source !J'avais croisé le code sur internet, ma


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,747 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales