Recup de champs dans une base Access

Signaler
Messages postés
489
Date d'inscription
mardi 16 novembre 2004
Statut
Membre
Dernière intervention
22 novembre 2007
-
Messages postés
489
Date d'inscription
mardi 16 novembre 2004
Statut
Membre
Dernière intervention
22 novembre 2007
-
En fait, g une base de donné access. G fé une page d'identification de l'utilisateur mais juste avec un numéro, pas de mot de pass er je voudrai dire en fait :

Si le numero ke l'utlisateur rentre (idlog) existe dan la table (champ idlog), alors le champ K1 de mon formulaire recoi la valeur K1 de la table et pareil pour K2
Et si l'idlog n'existe pa, il se cré dan la tabl avec K1 et K2 qui recevron les donné qui seron saisi dan le formulaire

Jesper ke c assez clair pr ke qq m'aide

Merci a tous
++

15 réponses

Messages postés
136
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
25 mai 2012

ta page 1 :
<form action="tapage2.asp" method="post">

</form>

ta page 2 :
<%
' recuprer le request du formulaire
if request("identifier") <> "" then
identifier = request("identifier")
else
end if

'ta connection
Conn = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.mapPath("database/base.mdb")
Set rs = Server.CreateObject("ADODB.Recordset")
SQL = "SELECT * FROM tatable WHERE k1 like '"& identifier &"'"
rs.Open SQL, conn ,3 ,3

'vérification de l'existence d'un compte :
if rs.recordcount < 1 then
's'il n'y en a pas :
Set rs2 = Server.CreateObject("ADODB.Recordset")
SQL2 = "SELECT * FROM tatable"
rs2.Open SQL2, conn ,3 ,3

'creation de l'enregistrement
rs2.addnew
rs2("k1") = "valeur" (ou variable sans guillemet)
rs2("k2") = "valeur" (ou variable sans guillemet)
rs2.update
response.redirect "tapage1.asp" '<==== ou la personne devra rerentrer la valeur
else
end if

'tu as pleins de manières de faire la c la plus simple
%>
<html><head></head>

<form>
">
">

</form>

</html>
Messages postés
489
Date d'inscription
mardi 16 novembre 2004
Statut
Membre
Dernière intervention
22 novembre 2007

ok jV testé ca mé j'avou ke je compren pa tro ta lign
SQL = "SELECT * FROM tatable WHERE k1 like '"& identifier &"'"

parce K1 c une valeur numériqu dc je pens que tu vou_lé mettr idlog a la place

pr le momen ca ne march pa, il y a une erreur a tou ce qui est SQL et SQL2

voila merci, jpens ke ca va bien m'avancé tou de mêm en reglan ces peti probleme

++
Messages postés
489
Date d'inscription
mardi 16 novembre 2004
Statut
Membre
Dernière intervention
22 novembre 2007

<%


' connexion
Set conn = server.CreateObject ("ADODB.Connection")
conn = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.mapPath("/base.mdb")
Set Rsbase = Server.CreateObject("ADODB.Recordset") sql "SELECT * FROM T1 WHERE idlog '" & idlog & "'"
Rsbase.Open sql, conn, 3, 3
' vérification de l'existence d'un compte :
if Rsbase.recordcount < 1 then
' s'il n'y en a pas :
Set Rsbase2 = Server.CreateObject("ADODB.Recordset")
sql2 = "SELECT * FROM T1"
Rsbase2.Open sql2, conn, 3, 3


' création de l'enregistrement
Rsbase2.addnew
Rsbase2("K1") = "0"
Rsbase2("K2") = "0"
Rsbase2.update
'response.redirect "page2.asp"
else
end if


%>

Pourquoi ca march pa??
g soi un erreur a sql, soi a sql2, jcompren pa, c tro con
Messages postés
136
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
25 mai 2012

Déjà otes ta premiere ligne :

'Set conn = server.CreateObject ("ADODB.Connection")

ensuite si tu veux incrémenter ta base de donnée il te faut actualiser ta page :

' response.redirect "page2.asp"

' <===== cette pastille tu l'enleves sinon tu n'actualise pas, et par le fait l'enregistrement ne se fais pas.

Sinon ta table s'appelle bien T1 et tes champs a enregistrer s'appellent bien K1 et K2 ?

Nicolas_kojack
Messages postés
489
Date d'inscription
mardi 16 novembre 2004
Statut
Membre
Dernière intervention
22 novembre 2007

oui mes valeur sont bien K1 et K2 mais aussi idlog ki identifie l'utilisateur

maintenan mon code c ca :
<%
' connexion
conn = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.mapPath("/base.mdb")
Set Rsbase = Server.CreateObject("ADODB.Recordset") sql "SELECT * FROM T1 WHERE idlog '" & idlog & "'"
Rsbase.Open sql, conn, 3, 3
' vérification de l'existence d'un compte :
if Rsbase.recordcount < 1 then
' s'il n'y en a pas :
Set Rsbase2 = Server.CreateObject("ADODB.Recordset")
sql2 = "SELECT * FROM T1"
Rsbase2.Open sql2, conn, 3, 3


' création de l'enregistrement
Rsbase2.addnew
Rsbase2("idlog") = request("idlog")
Rsbase2("K1") = "0"
Rsbase2("K2") = "0"
Rsbase2.update
response.redirect "page2.asp"
else
end if
%>

mais ca ne march tjs pa, mêm erreur ke tou ta leur, c sur le .open sql
Messages postés
136
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
25 mai 2012

a ce moment la joues avec le :

'"& idlog &"' <======= c peut etre pas ca essaies d'autres truc comme :

"& idlog &"

ou alors :

like '"& idlog &"' au lieu de = '"& idlog &"'

petite question tu as bien mis la ligne au dessus ?

idlog = request("idlog") <======= si tu n'as pas ca, ca ne peut pas fonctionner

Nicolas_kojack
Messages postés
489
Date d'inscription
mardi 16 novembre 2004
Statut
Membre
Dernière intervention
22 novembre 2007

Ah serieu? lol ben je lé pa mise
bon atten...j'essay.....
bon avec la lign ca chang rien

maintenan jessay de changer le '=' par un 'like'........
pareil

maintenan avec like "& idlog &"..........
ah ca a marché un cou et apré qd je fé préceden pr réssayé, ca ne ve plu, ca me remet l'ereur mé ca a qd mêm marché une foi, jten sui reconnaissan
ca doi etr un detail le reste jpens..comm d'hab, tjs des pti detail..
Messages postés
489
Date d'inscription
mardi 16 novembre 2004
Statut
Membre
Dernière intervention
22 novembre 2007

Et fo aussi ke je refass enregistrer les champ apré car sinon, il reste les mêm dan la base mêm si l'utilisateur les modifie
Messages postés
136
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
25 mai 2012

ca le fait que les utilisateurs les modifie c encore autre chose c que tu ne dois pas mettre de addnew sinon ca re enregistre un autre... donc tu enleve si tu ne veux que la mofication ou tu fais un autre bouton B2 et en haut de page tu met :

if request("b2") <> "" then

ton sql normal puis :
rs("K1") = request("K1")
pareil pour K2 et tu renvoies avec le response.redirect pour enregistrer les modifs...

Mais chaque chose en son temps
Messages postés
489
Date d'inscription
mardi 16 novembre 2004
Statut
Membre
Dernière intervention
22 novembre 2007

c koi cett ligne if request("b2") <> "" then
Messages postés
136
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
25 mai 2012

un autre bouton qui te permet de faire juste une modif mais je vient de te dire chaque chose en son temps <==== je regarde tes pages hahaha je sais pas comment tu fais pour t'y retrouver
Messages postés
489
Date d'inscription
mardi 16 novembre 2004
Statut
Membre
Dernière intervention
22 novembre 2007

lol c vré ke c un pe le bordel
tu ve ke je colle mes page en entiere ou tu les as recup l'autr foi sur le forum?
Messages postés
136
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
25 mai 2012

envoies la suite par mail aussi
Messages postés
489
Date d'inscription
mardi 16 novembre 2004
Statut
Membre
Dernière intervention
22 novembre 2007

Voila jT tou envoyé par mail
merci vrémen de ce ke tu fé c bien sympa

ps : j'utilis Visual J++ si ca t'interess

Merci encor et a biento de toute facon
++
Messages postés
489
Date d'inscription
mardi 16 novembre 2004
Statut
Membre
Dernière intervention
22 novembre 2007

Fait moi signe quand tu as du nouveau, j'essaye de voir comen permmetr que les infos qui son modifié soi enregistrer a leur tour. Parce qui fo qd mêm que je boss, je présente ce projet eu bts en fin d'anné