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

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [Javascript][résolu] Empêcher les posts monosmilesques

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Javascript][résolu] Empêcher les posts monosmilesques

n°975528
RedShift
To the moon!
Posté le 08-02-2005 à 16:07:09  profilanswer
 

:hello:  
 
Voilà, je suis nul en JavaScript :D et j'ai le code suivant :
 

Code :
  1. if (document.post.message.value.length < 5) {
  2.       formErrors = "{L_EMPTY_MESSAGE}";
  3.    }


 
qui sert à tester si le message que l'utilisateur veut poster est suffisament long et je voudrais l'améliorer avec une expression régulière pour que ça teste si le message posté est un post monosmilesque (les posts monosmilesques n'apportent généralement rien au débat). Le code des smileys est :co de: (sans l'espace au milieu). Donc pour les smileys n'excédant pas 4 caractères, le travail est déjà fait (length < 5) mais je ne veux pas augmenter ce nombre.  
Alors, comment faire, si le code du smiley dépasse cette limite, sachant qu'il ne faut pas que le script confonde un post du genre  
:smi ley: blablablablabla :smi ley:
avec un post
:code de smiley de plus de 4 caractères:
 
Merci


Message édité par RedShift le 12-02-2005 à 16:08:58

---------------
Ecosia, le moteur de recherche qui plante des arbres!
mood
Publicité
Posté le 08-02-2005 à 16:07:09  profilanswer
 

n°975539
sircam
I Like Trains
Posté le 08-02-2005 à 16:10:06  profilanswer
 

Citation :

les posts monosmilesques n'apportent généralement rien au débat

[:manu512]


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
n°975549
RedShift
To the moon!
Posté le 08-02-2005 à 16:16:27  profilanswer
 
n°975554
sircam
I Like Trains
Posté le 08-02-2005 à 16:17:45  profilanswer
 

[:chupachupz]


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
n°975742
cerel
Posté le 08-02-2005 à 19:19:05  profilanswer
 

Ca depends, si tu en as beacoup et qu'ils sont varies, alors les smilies peuvent etre pas mauvais ... Tu peux meme contruire des histoires avec ... :D
 
J'etais tombe une fois sur un site ou il fallait deviner des titres de films grace a des smilies (quizzzs me semble).

n°975750
masklinn
í dag viðrar vel til loftárása
Posté le 08-02-2005 à 19:33:06  profilanswer
 


tu fais une validation PHP et non JS [:spamafote]  
De toute façon, il faut toujours faire une vraie validation (en pas JS quoi) des forms, sinon t'es bon pour te vautrer [:spamafote]  
 
Sinon dans le cas précis, il suffit d'une regexp [:spamafote]  

^\s*:.+?:\s*$


Tu matches le message contre cette regexp, si le retour est positif (qu'il y a match) alors le post est monosmiley.
Sinon, il ne l'est pas.
 [:spamafote]


---------------
I've never understood the compulsion to use Web technologies minus the Web's security and deployment models. It seems a bit like throwing the orange away and eating the peel. — @ justinschuh‬
n°975764
RedShift
To the moon!
Posté le 08-02-2005 à 20:00:04  profilanswer
 

Masklinn a écrit :

tu fais une validation PHP et non JS [:spamafote]  
 
Non, ça ne me plaît pas. Avec le JavaScript, les utilisateurs prendront de bonnes habitudes et puis comme ça, ça consomme rien côté serveur.    
 
De toute façon, il faut toujours faire une vraie validation (en pas JS quoi) des forms, sinon t'es bon pour te vautrer [:spamafote]  
 
Globalement, yen a déjà une de valable, le JS c'est en plus.
 
Sinon dans le cas précis, il suffit d'une regexp [:spamafote]  

^\s*:.+?:\s*$


 
Merci mais je suis vraiment nul en JS (j'avais prévenu  :lol: ) c'est quoi la ligne complète qu'il faut mettre (entre le if et l'accolade quoi) ?  
 
Tu matches le message contre cette regexp, si le retour est positif (qu'il y a match) alors le post est monosmiley.
Sinon, il ne l'est pas.
 [:spamafote]



---------------
Ecosia, le moteur de recherche qui plante des arbres!
n°975769
masklinn
í dag viðrar vel til loftárása
Posté le 08-02-2005 à 20:04:48  profilanswer
 

Citation :

Merci mais je suis vraiment nul en JS (j'avais prévenu  :lol: ) c'est quoi la ligne complète qu'il faut mettre (entre le if et l'accolade quoi) ?  


Aucune idée, je suis pas dans le JS, renseignes toi sur les regular expressions (expressions rationnelles en VF)


---------------
I've never understood the compulsion to use Web technologies minus the Web's security and deployment models. It seems a bit like throwing the orange away and eating the peel. — @ justinschuh‬
n°975772
RedShift
To the moon!
Posté le 08-02-2005 à 20:12:56  profilanswer
 

Ben c'est pour ça que je demande, je veux pas me taper toute la doc de JS rien que pour tester une regexp. Enfin, si faut le faire, je le ferai, mais si quelqu'un est fort en JS ici, ça doit pas lui poser de problème et ça m'aurait bien dépanné :D.


---------------
Ecosia, le moteur de recherche qui plante des arbres!
n°975806
cerel
Posté le 08-02-2005 à 20:53:01  profilanswer
 

Tiens va voir sur cette page (merci google :D)
Il y a meme un section ou tu peux tester ta regexp en "direct"
http://www.regular-expressions.info/javascript.html

mood
Publicité
Posté le 08-02-2005 à 20:53:01  profilanswer
 

n°975850
RedShift
To the moon!
Posté le 08-02-2005 à 21:59:59  profilanswer
 

Merci, je vais voir ça.


---------------
Ecosia, le moteur de recherche qui plante des arbres!
n°976486
RedShift
To the moon!
Posté le 09-02-2005 à 15:05:30  profilanswer
 

Bon alors, j'ai trouvé la bonne expression régulière sans trop de problème (ça peut s'améliorer encore mais bon pour l'instant, ça me convient), mais au niveau du code ya un problème. Quand je rajoute le test, ça marche pas. Pire, le test de longueur ne marche même plus  [:joce]  
 
 

Code :
  1. var re = new RegExp(^:[a-zA-Z0-9]{3,9}:);
  2. if (document.post.message.value.length < 2 || document.post.message.value.match(re)) {
  3.  formErrors = "{L_EMPTY_MESSAGE}";
  4. }


 
Quelqu'un a une idée ?

n°979506
RedShift
To the moon!
Posté le 12-02-2005 à 16:08:28  profilanswer
 

C'est bon, j'ai trouvé. Il suffisait de mettre la regexp entre guillemets dans la première ligne ou mieux :
 

Code :
  1. if (document.post.message.value.length < 5  || document.post.message.value.match("^( *:[a-zA-Z0-9]{3,9}: *)+$" )) {
  2.       formErrors = "{L_EMPTY_MESSAGE}";
  3.    }


 
Cela s'entend pour des noms de smileys ne comportant que des lettres ou des chiffres et pas d'espace. Après, pour améliorer la chose, il suffit d'améliorer la regexp.


Message édité par RedShift le 15-02-2005 à 17:06:39

---------------
Ecosia, le moteur de recherche qui plante des arbres!

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [Javascript][résolu] Empêcher les posts monosmilesques

 

Sujets relatifs
Programme en delphi .net ne lance pas sur d'autre PC [resolu]Specialisation de template et erreur de link... [presque resolu]
Inversion de couleurs [Résolu][HTML/Javascript] gallerie avec image survolée et affichage séparé
Modifier le type d'un élément de formulaire en javascript[Résolu] Pb dans mon code javascript
Javascript: objet qui FUIT la sourisControle ASP.NET et javascript ?
Problème PHP/Javascript 
Plus de sujets relatifs à : [Javascript][résolu] Empêcher les posts monosmilesques


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