Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Langages serveur > ASP
ASP Forum sur la programmation ASP. Avant de poster : Cours ASP, FAQ ASP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/04/2007, 13h37   #1
Candidat au titre de Membre du Club
 
Inscription : mars 2006
Messages : 48
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 48
Points : 11
Points : 11
Par défaut Problème de structure conditionelle

Bonjours à tous !

Voilà mon soucis...

Je veut faire une structure conditionel avec ma base de donné mais j'ai de la difficulté a la réalisé

if rs.fields("numero")=1 and <0 then
response.write "<a href=membre_ajoutcontre.asp>"
response.write "<img style=position:absolute;left:500px;top:60px; src=./images/sec0.gif border=0 /> </a> "

Moi j'aimerais faire sa

Si le champ numéro 1 N'existe pas alors affiche sa

Autrement

Affiche sa

Merci
tidus666x est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/04/2007, 14h07   #2
Expert Confirmé
 
Avatar de pc75
 
Inscription : septembre 2004
Messages : 2 810
Détails du profil
Informations personnelles :
Âge : 56
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : septembre 2004
Messages : 2 810
Points : 3 011
Points : 3 011
Bonjour,

Si j'ai compris !

Code :
1
2
3
4
5
6
 
if rs.fields("numero") = 1 and rs.fields("numero") < 0 then
response.write "<a href=membre_ajoutcontre.asp>"
else
response.write "<img style=position:absolute;left:500px;top:60px; src=./images/sec0.gif border=0 /> </a> "
end if
__________________
Par principe, je ne réponds pas aux messages URGENT.
Il n'y a pas de choses urgentes, il n'y a que des choses en retard. (un inconnu)
pc75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/04/2007, 16h35   #3
Candidat au titre de Membre du Club
 
Inscription : mars 2006
Messages : 48
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 48
Points : 11
Points : 11
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
 
<%Dim rs,sql,conn
Set Conn = Server.CreateObject("ADODB.Connection")
Set rs= Server.CreateObject("ADODB.Recordset")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.Mappath("db/citelecture.mdb")
sql ="select * from mrp where ideleve=" & session("ideleve")
rs.Open sql, conn , 2, 3 
conn.execute(sql)
if not rs.eof then
do while not rs.eof
 
 
'Boutton 1
if rs.fields("numero") = 1 and rs.fields("numero") < 0 then
 
response.write "<a href=membre_ajoutcontre.asp>"
response.write "<img style=position:absolute;left:500px;top:60px; src=./images/sec0.gif  border=0 /> </a> "
 
else
'B1 Sec 1
if rs.fields("niveau")=1 then
response.write "<img style=position:absolute;left:250px;top:60px; src=./images/sec1.gif  border=0 />"
end if 
 
'B1 Sec 2
 
if rs.fields("niveau")=2 then
response.write "<img style=position:absolute;left:250px;top:60px; src=./images/sec2.gif  border=0 />"
end if 
 
'B1 Sec 3
 
if rs.fields("niveau")=3 then
response.write "<img style=position:absolute;left:250px;top:60px; src=./images/sec3.gif  border=0 />"
end if 
 
'B1 Sec 4
 
if rs.fields("niveau")=4 then
response.write "<img style=position:absolute;left:250px;top:60px; src=./images/sec4.gif  border=0 />"
end if 
 
'B1 Sec 5
 
if rs.fields("niveau")=5 then
response.write "<img style=position:absolute;left:250px;top:60px; src=./images/sec5.gif  border=0 />"
end if 
end if
 
 
 
 rs.movenext
loop
else
response.write"Aucun contre-rendu <br>"
end if
rs.Close
Set rs = Nothing
Conn.Close
Set Conn = Nothing
 
%>
Voici mon code intégral
Malheureusement ton code ne fonctionne pas

Je vais vous expliquer exactement le but rechercher:

Je veut faire que quand une fiche existe le bouton change de coulleurs:

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
'B1 Sec 1
if rs.fields("niveau")=1 then
response.write "<img style=position:absolute;left:250px;top:60px; src=./images/sec1.gif  border=0 />"
end if 
 
'B1 Sec 2
 
if rs.fields("niveau")=2 then
response.write "<img style=position:absolute;left:250px;top:60px; src=./images/sec2.gif  border=0 />"
end if 
 
'B1 Sec 3
 
if rs.fields("niveau")=3 then
response.write "<img style=position:absolute;left:250px;top:60px; src=./images/sec3.gif  border=0 />"
end if 
 
'B1 Sec 4
 
if rs.fields("niveau")=4 then
response.write "<img style=position:absolute;left:250px;top:60px; src=./images/sec4.gif  border=0 />"
end if 
 
'B1 Sec 5
 
if rs.fields("niveau")=5 then
response.write "<img style=position:absolute;left:250px;top:60px; src=./images/sec5.gif  border=0 />"
end if
Voici la roulette:



Lorsque il n'a pas aucune fiche le rond est blanc et lorsque on clique sela redirige a une page d'ajout de fiche

La page porte le nom (Exemple pour ajouter sur le 1er boutton)

membre_ajoutcontre.asp?numero=1

Par exemple Si j'ai quelque chose alors le boutton va passé du blanc a une autre coulleur

Merci de votre aide
tidus666x est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/04/2007, 17h07   #4
Expert Confirmé
 
Avatar de pc75
 
Inscription : septembre 2004
Messages : 2 810
Détails du profil
Informations personnelles :
Âge : 56
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : septembre 2004
Messages : 2 810
Points : 3 011
Points : 3 011
Re,

Est-ce que ton recordset contient bien des données ?

Après la ligne :
Citation:
if not rs.eof then
Insère cette ligne pour vérifier qu'il rentre dans la boucle
Code :
1
2
 
response.write "OK"
__________________
Par principe, je ne réponds pas aux messages URGENT.
Il n'y a pas de choses urgentes, il n'y a que des choses en retard. (un inconnu)
pc75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/04/2007, 17h45   #5
Candidat au titre de Membre du Club
 
Inscription : mars 2006
Messages : 48
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 48
Points : 11
Points : 11
Pour le moment il est vide...Il ya aucune donné dedens

Mais ils n'affiche pas l'image blanche ! c'est une erreur dans mon 1er If après

'Boutton 1

Je crois

Merci de votre aide
tidus666x est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/04/2007, 16h38   #6
Candidat au titre de Membre du Club
 
Inscription : mars 2006
Messages : 48
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 48
Points : 11
Points : 11
Bonjour
J'ai changé ma manière d'écrire mon code Je l'écrit de cette facon maintenant:

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
37
38
39
40
Set Conn = Server.CreateObject("ADODB.Connection")
Set rs= Server.CreateObject("ADODB.Recordset")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& Server.Mappath("db/citelecture.mdb")
sql ="select numero, ideleve, eleveniveau from mrp where numero=1 and ideleve=" & session("ideleve")
rs.Open sql, conn , 2, 3 
conn.execute(sql)
if not rs.eof then
do while not rs.eof
 
 
if rs.fields("eleveniveau")=1 then
response.write  "<a href=membre_voircontre.asp?numero=1> <img style=position:absolute;right:425px;top:165px; src=./images/sec1.gif border=0 height=40 width=40 /> </a>"
end if
 
if rs.fields("eleveniveau")=2 then
response.write  "<a href=membre_voircontre.asp?numero=1> <img style=position:absolute;right:425px;top:165px; src=./images/sec2.gif border=0 height=40 width=40 /> </a>"
end if
 
if rs.fields("eleveniveau")=3 then
response.write  "<a href=membre_voircontre.asp?numero=1> <img style=position:absolute;right:425px;top:165px; src=./images/sec3.gif border=0 height=40 width=40 /> </a>"
end if
 
if rs.fields("eleveniveau")=4 then
response.write  "<a href=membre_voircontre.asp?numero=1> <img style=position:absolute;right:425px;top:165px; src=./images/sec4.gif border=0 height=40 width=40 /> </a>"
end if
 
if rs.fields("eleveniveau")=5 then
response.write  "<a href=membre_voircontre.asp?numero=1> <img style=position:absolute;right:425px;top:165px; src=./images/sec5.gif border=0 height=40 width=40 /> </a>"
end if
 
 rs.movenext
loop
else
response.write  "<a href=membre_ajoutcontre.asp?numero=1> <img style=position:absolute;right:425px;top:165px; src=./images/sec0.gif border=0 height=40 width=40 /> </a>"
 
end if
rs.Close
Set rs = Nothing
Conn.Close
Set Conn = Nothing
Mais j'obtuen cette erreur lorsque je mets une fiche dans la base de donné


Code :
1
2
3
4
5
Microsoft JET Database Engine erreur '80040e07' 
 
Type de données incompatible dans l'expression du critère. 
 
/chenebleu/informatique/images/e414021/citelecture/membre_index.asp, ligne 61
Merci
tidus666x est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/04/2007, 12h24   #7
Modérateur
 
Avatar de kaiser59
 
Inscription : novembre 2005
Messages : 1 246
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : novembre 2005
Messages : 1 246
Points : 1 203
Points : 1 203
Envoyer un message via MSN à kaiser59
Salut,

En ce qui concerne l'erreur cela veut dire que un des champs que tu appele est soit au format texte soit au format numérique dans ce cas, dans ta requete si tu fais appel à du texte tu devras mettre les (') (par exemple : select ... from toto where nom='fifi' ) et si c'est du numérique tu ne dois pas mettre de (').

Sinon pour ton test essaye ceci qui correspond au 1er test que tu as écrit :
Code :
1
2
3
4
5
6
7
8
9
10
<%
Do while not rs.eof
'Comme tu le sais, le signe strictement inférieur signifie qu''il doit s'arrêter à n-1 donc 2 ne sera pas pris en compte
 if rs.("numero")< 2 then 'si numero est un champ text alors 2 doit etre entre apostrophe.
   response.write "<a href=membre_ajoutcontre.asp>"
   response.write "<img style=position:absolute;left:500px;top:60px; src=./images/sec0.gif border=0 /> </a> "
 End if
Rs.movenext
Loop
%>
Par contre, pour le cas de tes if, je te conseille d'utiliser plutot le Select case

++
kaiser59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/04/2007, 23h18   #8
Candidat au titre de Membre du Club
 
Inscription : mars 2006
Messages : 48
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 48
Points : 11
Points : 11
Sallut

tout mes problèmes sont réglé parce que un de mes champs dans ma base de donné était TEXT alors qu'il contenait du numerique

alors j'ai seulement convertie le champ text a numerique et Poof ca a fonctionné.

Merci de votre aide
tidus666x est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h41.


 
 
 
 
Partenaires

Hébergement Web