blangenois
Messages postés7Date d'inscriptionlundi 17 octobre 2005StatutMembreDernière intervention24 octobre 2005
-
17 oct. 2005 à 19:56
blangenois
Messages postés7Date d'inscriptionlundi 17 octobre 2005StatutMembreDernière intervention24 octobre 2005
-
21 oct. 2005 à 18:19
Bonjour,
j'ai un recordset1..MaDate, j'aimerai que celui ci soit surligné en jaune et écris en rouge lorsque cette date est dépassée ou du moins changer son aspect
je m'explique :
16/10/2005 donc aujourdhui il devait apparaitre sur ma page asp 16/10/2005 et surligner en jaune.
Pourriez vous m'aider....
Merci d'avance
Philippe
A voir également:
"Php variables" "php version 4.4.5" "build date" "server api"
Nicolas_kojack
Messages postés136Date d'inscriptionvendredi 19 novembre 2004StatutMembreDernière intervention25 mai 2012 19 oct. 2005 à 12:48
' au-dessus du <head> <%
' Ta connexion à la base ( qui doit être en une ligne mais qui apparait ici en deux lignes )
Conn = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.mapPath("date.mdb")
'La Sélection de la table et des champs
Set RS =Server.CreateObject("ADODB.Recordset")
sql = "SELECT * from mesdates"
Rs.Open sql, Conn, 3, 3
'Tu cree une variable jour qui aura pour valeur la date du jour
jour = date()
%>
'dans le body :
'Tu crée le début de ta boucle d'enregistrements ( positionnement sur le prmier enregistrement ) <%
if rs.recordcount > 0 then
rs.movefirst
do while not rs.eof
'Tu crée la variable champjour qui aura pour valeur le contenu de ton champ pour chaque enregistrement champjour = rs("date")
%>
'Maintenant il te faut une condition, ici je décide que ma date soit surlignée en jaune et ecrit en rouge ( jusqu'à la borne
tout doit être sur la même ligne ):
<%if champjour = jour then%>#FF0000"><%=champjour%><%else%><%=champjour%><%end if%>
'Tu crée la fin de ta boucle d'enregistrement ( positionnement sur le champ suivant )
<%
rs.movenext
loop
else
end if
%>
'Ce bout de code surligne en jaune et ecrit en rouge la date du jour, mais si tu veux que toutes les dates d'avant apparaissent de la même manière, il te suffit de remplacer dans la condition <%if champjour = jour then%> par <%if champjour <= jour then%>. Etc ....
Voilà, en esperant que cela puisse t'aider.
Nicolas
Nicolas_kojack
Messages postés136Date d'inscriptionvendredi 19 novembre 2004StatutMembreDernière intervention25 mai 2012 19 oct. 2005 à 21:05
Nurgle : oui pour moi aussi elle tient en une seule ligne, mais je ne suis pas venu depuis un moment et j'avais été habitué a ce qu'elle ne tienne pas sur une seule ligne... Bref dsl
Philippe ( Blangenois ) :
tu copies tout le code sur ta page. Pour information :
- la première ligne correspond à la connection avec ta base, "date.mdb" est donc le nom de ma base de donnée que j'ai mis à la racine ( pas conseillé d'ailleurs ) si pour ta part elle se trouve dans un répertoire autre que le répertoire racine tu dois mettre le chemin relatif avec des slashs comme s'il s'agissait d'une URL puis le nom de ta base avec extension ( je ne pense pas qu'il soit necessaire de le dire mais sait on jamais )
- la ligne sql = "SELECT * from mesdates" pose la limite de ton recordset. Ici mesdates est le nom de la table qui m'a servie. Tu dois remplacer mesdates par le nom de ta table. Le fait d'écrire SELECT * veut dire que tu lui demande de choisir tous les champs de la table.
- la ligne if rs.recordcount > 0 then
( je supute que tu le saches, mais sait on jamais ... ) pose la condition : SI dans mon recordset j'ai + de zéro enregistrement ALORS( si tu ne mets pas une condition et que tu n'as pas d'enregistrement il te sortira une erreur )
- la ligne juste en dessous concerne les instruction à faire s'il y a au moins un enregistrement. rs.movefirst
veut dire que le recordset se place sur le premier enregistrement ( c a d la première ligne de ta table )
- La ligne encore en dessous do while not rs.eof
veut dire que l'opération doit se répéter tant que la condition est vraie ( ici tant qu'il y a un enregistrement en plus )
- champjour correspond à la valeur date sur la ligne en cours. Dans mon cas le champ date de ma table s'appelle date ( ce qui n'est pas non plus conseillé du tout ).
- <%if champjour jour then%> ici je compare ma variable champjour ( qui équivaut à l'enregistrement de la table qui se trouve au niveau du curseur du recordset ) Je compose une nouvelle condition : <gras>SI ma variable EST EGALE à la date du jour ALORS. ( jour étant défini plus haut : jour</gras> date() )
- ... ALORS tu me mets le bloc de code HTML ( ici des balises pour définir la mise en forme du texte ) puis tu m'affiche le recordset ( champjour ). SINON ( else ) tu ne me mets que le recordset ( sans la mise en forme ).
- end if : je ferme la condition du champjour
- je ferme ensuite ma boucle en lui disant que de se positionner sur l'enregistrement suivant : rs.movenext
- loop : tu reviens au début du code ( if rs.recordcount > 0 then )
- else : s'il n'y a plus d'enregistrement suivant ( SINON )
- end if : fin de la condition de départ
Pour revenir ensuite à vouloir surligner ce que tu veux par rapport a un enregistrement ( ici une certaine date ) tu dois modifier la condition qui est comprise dans la boucle des recordset : pour se faire tu utilises les opérateurs que tu utiliserais en mathématique à savoir =, >, >,<>, et ainsi de suite. Si tu veux qu'elle soit égale ou dépassée pour être affichée en surlignée jaune et écrite en rouge tu devras remplacer if champjour = date then par if champjour <= date, si tu veux qu'elle soit égale ou postérieure je te laisse deviner...
blangenois
Messages postés7Date d'inscriptionlundi 17 octobre 2005StatutMembreDernière intervention24 octobre 2005 19 oct. 2005 à 19:44
Bonjour,
merci vous de vous êtes donné la peine de répondre a mon soucis....
en fait la date doit être surligner et écrit en rouge si elle est égale ou dépasse celle du jour.....
je travaille avec dreamweaver , étant un sacré novice, je présume qu'a la place du recorset, je dois placer le code que vous m'avez envoyé??
Merci d'avance.