Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2806 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  date

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

date

n°1373865
julia_01
Posté le 24-05-2006 à 10:46:11  profilanswer
 

slt
 
voilà j'ai un problème en php. est-il possible de faire un champ pour une date a insérer. Dans le champs il n'y aurait que les chiffres à insérer. ../../.. ou ..-..-.. .  
ou alors quand la personne veut insérer la date dans le champs vide, et qu'il mette une lettre, un message d'erreur apparaît.
et comment fait-on un message d'erreur?
 
 
c'est l'administrateur qui choisit la date qu'il veut inserer.  
 
La date sert a savoir combien de temps il decide de garder un texte ou une banniere. il rentre la date de depart et la date de fin.. par exemple il veut qu'une banniere soit affichée du 25 mai 2006 au 30 juin 2006. il rentre ces dates et la banniere est affichée tout ce temps.
 
j'ai fait 2 champs dans la base de données. date_debut et date_fin.  
 
 mais je sais pas comment faire pour qu'aucune lettre ne soit insérée, qu'il n'y ait que des chiffres. s'il rentre par mégarde une lettre il y aura un message d'erreur
 
merci d'avance

mood
Publicité
Posté le 24-05-2006 à 10:46:11  profilanswer
 

n°1373868
anapajari
s/travail/glanding on hfr/gs;
Posté le 24-05-2006 à 10:51:56  profilanswer
 

tu as 400 façons différentes de le faire, on va opter pour la plus simple, lis la doc et utilise is_int
 
edit: Attention avec cette fonction, cela ne va vérifier que ce que tu demandais, à savoir "qu'il n'y ait que des nombres". Rien n'empechera de sasir 56/87/1201 comme date.


Message édité par anapajari le 24-05-2006 à 10:53:21
n°1373878
HellR
Posté le 24-05-2006 à 10:56:13  profilanswer
 

Si tu veux vérifeir que la date est valide il va falloir faire un petit bout de javascript.
 
Il y a un bon article : http://www.aidejavascript.com/article122.html
 
Sinon pour le masque de champ __/__/____ je n'ai aucune idée à première vue.

Message cité 1 fois
Message édité par HellR le 24-05-2006 à 10:58:01
n°1373883
anapajari
s/travail/glanding on hfr/gs;
Posté le 24-05-2006 à 11:00:09  profilanswer
 

HellR a écrit :

Si tu veux vérifeir que la date est valide il va falloir faire un petit bout de javascript.


nawak :o

n°1373887
HellR
Posté le 24-05-2006 à 11:02:52  profilanswer
 

Poru le masque de saisie regarde de ce côté là :
http://www.javascriptfr.com/codes/ [...] 17339.aspx
http://www.javascriptfr.com/codes/ [...] 15773.aspx


Message édité par HellR le 24-05-2006 à 11:05:34
n°1373888
HellR
Posté le 24-05-2006 à 11:04:29  profilanswer
 


 
J'adore les réponses aussi constructives, on à l'impression d'être moins idiot d'un coup là :)

n°1373891
julia_01
Posté le 24-05-2006 à 11:06:26  profilanswer
 

lol trop chou..  
merci pour votre aide tout le monde.. je vais voir les liens et je vous redit tout ca ... :)

n°1373899
anapajari
s/travail/glanding on hfr/gs;
Posté le 24-05-2006 à 11:16:11  profilanswer
 

Faire les controles de validité "coté client" ( donc en javascript) n'est jamais une bonne idée pour la simple est bonne raison qu'il est facile des les désactiver.
Ce genre de contrôle doit être fait "coté serveur" (donc en php) afin de s'assurer de la validité des données insérées dans la base.  
 
Rajouter du javascript peut être utile pour faciliter la saisie de l'utilisateur mais c'est tout...

n°1373911
HellR
Posté le 24-05-2006 à 11:22:05  profilanswer
 

Tu vois avec des phrases c'est déjà mieux ^^  
 
Pour appliquer un masque et pour avertir l'utilisateur si les donées saisies sont érronées tu n'a pas d'autres choix que le javascript. A part faire des redirection à gogo en renvoyant tous les paramètres de pages en pages je ne vois pas de solution "pratique" en PHP. Après en effet, un contrôle final juste avant l'insertion dans la base c'est indispensable :)


Message édité par HellR le 24-05-2006 à 11:22:33
n°1373913
julia_01
Posté le 24-05-2006 à 11:23:53  profilanswer
 

ouhlà y a du contradictoire la dedans :/.. mais comme je fais coté administrateur y a aucun probleme pour utiliser du javascript non?.. et sinon en php ca donnerait quoi alors?

mood
Publicité
Posté le 24-05-2006 à 11:23:53  profilanswer
 

n°1373930
HellR
Posté le 24-05-2006 à 11:31:53  profilanswer
 

Il n'y a rien de contradictoire. Si tu as une page form.php par exemple avec ton formulaire qui renvoie le tout sur updatebdd.php qui va mettre à jour la base de données, il faut :
 
1) Faire une vérification des données de ton formulaire et appliquer les masques sur form.php, le tout en javascript. En gros au moment ou la personne va valider le formulaire ça va d'abord lancer le javascript puis rediriger le tout sur updatebdd.php.
 
2) Faire une vérification en PHP des données sur updatebdd.php juste avant l'insertion dans la base de données. Comme l'a expliqué anapajari ça permet d'être sur de ce que tu insères même si le javascript est désactivé sur le navigateur de la personne.


Message édité par HellR le 24-05-2006 à 11:46:40
n°1373947
anapajari
s/travail/glanding on hfr/gs;
Posté le 24-05-2006 à 11:40:56  profilanswer
 

le js c'est le mal :o
Aussi bien pour le problème de désactivation que j'évoquais plus haut que pour les problèmes de compatibilité inter browser
 
Et je ne suis vraiment pas d'accord sur l'aspect "pas pratique" de la solution. Si le site est correctement construit et que la couche présentation est bien séparée de la couche métier, c'est très aisé à faire. D'ailleurs même si c'est pas le cas c'est pas bien difficile. Tu peux tout faire tenir en une page... un truc dans le genre:
form.php

Code :
  1. <?php
  2. if ( count($_POST)){
  3.   if (! checkdate($_POST['month'], $_POST['day'], $_POST['year']){
  4.     $error = 1;
  5.   }
  6. } else {
  7.   // traitement si tout est ok puis redirection
  8.   header('ok.php');
  9. }
  10. ?>
  11. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
  12. <head>
  13.   <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
  14.   <title>Exemple</title>
  15.   <style type="text/css">
  16.   span.error{
  17.   color:red;
  18.   }
  19.   </style>
  20. </head>
  21. <body>
  22.   <form id="myform" action="form.php" method="post">
  23.     <input type="text" name="day" value="<?php echo $_POST['day']?>"/>
  24.     <input type="text" name="month" value="<?php echo $_POST['month']?>"/>
  25.     <input type="text" name="year" value="<?php echo $_POST['year]?>"/>
  26.     <input type="submit" value="valider"/>
  27.   </form>
  28.   <?php if ($error){ ?>
  29.   <span class="error">La date n'est pas correct</span>
  30.   <?php }?>
  31. </body>
  32. </html>

n°1373958
HellR
Posté le 24-05-2006 à 11:52:13  profilanswer
 

Meuh non javascript ce n'est pas si mal :)
 
Sinon very nice ta solution, à condition de tout bien séparer au risque d'avoir une page illisible. Je prend note pour le futur je n'y avais pas pensé ;)

n°1373970
julia_01
Posté le 24-05-2006 à 12:00:16  profilanswer
 

j'ai insérer ton code dans le mien et il me dit qu'il y a une faute dans la ligne du if (! checkdate....).. je ne comprends pas pourquoi..:(

n°1373980
anapajari
s/travail/glanding on hfr/gs;
Posté le 24-05-2006 à 12:05:51  profilanswer
 

il manque une parenthèse fermante au if...
dsl j'ai tout ecrit de tête sans rien tester :D

n°1374443
julia_01
Posté le 24-05-2006 à 17:21:24  profilanswer
 

merci bcp.. j'ai une autre question..moitié flash moitié php :D...
en flash j'ai crée des effets qui doivent s'appliquer à l'image dans php.. les effets sont choisis dans une liste deroulante.  
 
comment importer du swf dans php? faut-il mettre dans un xml?  
je dois aussi placer ce code quelque part: swf?service=video (fichier xml se nomme video.xml)
 
vous pouvez aussi m'aider sur ce point :)

n°1377010
sam04
Posté le 29-05-2006 à 21:03:54  profilanswer
 

moi ma question est a peu pres la meme..  
 
si on rentre la date dans le champ.. par ex 12122006.. comment fait-on qu'elle se mette automatiquement 12.12.2006??  
j ai cherché partout en vain.. lorsque j'insère la date, quelque chose doit se mettre en action a la date indiquée.. genre une animation par ex.. vous avez des idées???


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  date

 

Sujets relatifs
petit probleme de selection multiple avec date[Vb.net] Date
Java -> Date, probleme d exception ?!SELECT de la date la plus proche du jour actuel
convertir une chaine en date en php[Résolu] Obtenir date depuis date initiale
Problème récupération datetransformer une date JJ/MM/AAAA en AAAA-MM-JJ
probleme de boucle avec une date résolurecupérer la date d'hier
Plus de sujets relatifs à : date


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR