IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Script compteur de caractères et de mots


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2015
    Messages : 7
    Par défaut Script compteur de caractères et de mots
    Salut les amis,

    Je viens vers vous car je vais lancer un annuaire qui tourne sous le CMS Arfooo et j'aimerais améliorer l'interface de soumission des fiches et notamment la partie compteur de caractères qui n'est pas top. J'ai donc trouvé sur cette page un script qui me convient parfaitement.

    Le problème c'est que je n'arrive pas à le faire fonctionner et je me retrouve avec une erreur du style :

    Parse error: syntax error, unexpected '.', expecting '(' in C:\Program Files (x86)\EasyPHP-12.1\www\arfooo\components\template_lite\class.template.php(535) : eval()'d code on line 230
    J'ai bien connecté jQuery en utilisant cette ligne dans la partie <head></head> de mon Header :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <script type="text/javascript" src="http://jquery.com/src/jquery-svn.js"></script>

    Et j'ai inséré le code suivant dans ma page SubmiteWebsite.tpl :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <div class="form">
        <label class="title">{'webmasterSubmitWebsite_website_desc'|lang} <span class="text_color_mandatory">*</span></label>
        <div class="infos"><div class="infos_textarea"><textarea class="textarea_extra_large" name="description" cols="50" rows="5" id="itemDescription"></textarea></div><img src="{"/templates/$templateName/images/icone_info.gif"|resurl}" alt="" class="aide_description" title="{'webmasterSubmitWebsite_website_desc_tooltip'|lang}"/><br style="clear:both;"/>
        <span id="descriptionCharsLeftCounter"></span> {'webmasterSubmitWebsite_characters_left'|lang}</div>
     
    </div>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    $(document).ready(function(e) {
     
      $('#itemDescription').keyup(function() {
     
        var nombreCaractere = $(this).val().length;
     
        var nombreMots = jQuery.trim($(this).val()).split(' ').length;
        if($(this).val() === '') {
         	nombreMots = 0;
        }	
     
        var msg = ' ' + nombreMots + ' mot(s) | ' + nombreCaractere + ' Caractere(s) / 200';
        $('#compteur').text(msg);
        if (nombreCaractere > 200) { $('#compteur').addClass("mauvais"); } else { $('#compteur').removeClass("mauvais"); }
     
      })  
     
     });
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <p id="itemDescription">0 mots - 0 Caractere / 200</p>

    Voici la ligne 230 du message d'erreur mais à mon avis ça ne vient pas de là car cette ligne fonctionnait très bien avant l'ajout du script :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <div class="form">
        <label class="title">{'webmasterSubmitWebsite_adress'|lang}</label>
        <div class="infos"><input type="text" class="input_text_large" name="address" value="" /></div>
    </div>
    Pouvez vous me filer un coup de main pour trouver d'ou vient le problème ?

    Merci d'avance.

    Julien

  2. #2
    Expert confirmé

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 418
    Par défaut
    Comme l'indique le message d'erreur php la ligne d'erreur se trouve à la ligne 230 dans ton code php.
    C'est celle-ci qu'il faudrait nous montrer.
    En plus je vois un "eval", il faut vraiment éviter d'utiliser cette fonction car c'est potentiellement un trou de sécurité (fatal si on peut l'exploiter).

  3. #3
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2015
    Messages : 7
    Par défaut
    Salut, merci pour ta réponse,

    En ce qui concerne la ligne d'erreur je l'ai indiqué dans mon précédent message.

    Sinon qu'est ce que vous me conseillez pour éviter l'éval ?

    En précisant que je ne suis pas développeur.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2015
    Messages : 7
    Par défaut
    Est ce que vous pensez que le code se trouvant à cette adresse serait plus approprié ?

  5. #5
    Expert confirmé

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 418
    Par défaut
    Faut tester pour voir s'il te convient mieux...

    Mais en attendant, apparemment ce n'est pas le code javascript qui pose problème c'est le code php de la page www\arfooo\components\template_lite\class.template.php à la ligne 535

  6. #6
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2015
    Messages : 7
    Par défaut
    Merci pour tes réponses.

    En faite les deux bouts de code me convienne, il font similairement la même chose c'est à dire compteur de mots couplé à un compteur de caractères.

    Par contre si tu me dis qu'il peut y avoir un faille de sécurité dans le premier script il faut peut être mieux que je prenne le deuxième ? A moins que tu parles d'une faille de sécurité directement liée à Arfooo ?

    Voici le code de la page www\arfooo\components\template_lite\class.template.php à la ligne 535 la ligne 535 est celle qui a l'étoile :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    ob_start();
    	*      eval(' ?>' . $output . '<?php ');
    		$output = ob_get_contents();
    		ob_end_clean();
    		return $output;
    	}

  7. #7
    Expert confirmé

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 418
    Par défaut
    Citation Envoyé par winsa Voir le message
    A moins que tu parles d'une faille de sécurité directement liée à Arfooo ?
    Oui enfin tant que la variable $output ne peut pas être modifiée par une entrée utilisateur ça devrait aller. Mais ton script fonctionne-t-il correctement sans ta nouvelle fonction de comptage ?

  8. #8
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2015
    Messages : 7
    Par défaut
    Oui sans l'ajout du script de comptage de mots / caractères tout fonctionne correctement.

  9. #9
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2015
    Messages : 7
    Par défaut
    Est ce que quelqu'un a une idée ? Remarquez vous quelque chose d'incorrect ?

    Je précise que je ne suis pas développeur. J'ai essayé d'intégrer aussi le deuxième script que j'ai donné mais j'ai également un message d'erreur.

    J'imagine que c'est moi qui doit faire quelque chose de travers.

  10. #10
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 198
    Par défaut
    Bonjour,
    extrait de la discussion...
    Citation Envoyé par ABCIWEB
    Mais ton script fonctionne-t-il correctement sans ta nouvelle fonction de comptage ?
    Citation Envoyé par winsa
    Oui sans l'ajout du script de comptage de mots / caractères tout fonctionne correctement.
    il me semble que l'on peut en conclure raisonnablement qui c'est ton script qui ne va pas !

  11. #11
    Membre chevronné
    Profil pro
    à la bougie alors
    Inscrit en
    Mai 2006
    Messages
    224
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : à la bougie alors

    Informations forums :
    Inscription : Mai 2006
    Messages : 224
    Par défaut
    Salut,
    Pas sûr qu'il y ait un rapport mais dans ton premier post, dans le deuxième bloc de code HTML, je pense que tu as un problème de syntaxe :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    ...<img src="{"/templates/$templateName/images/icone_info.gif"|resurl}" alt="" class="aide_description" title="'webmasterSubmitWebsite_website_desc_tooltip'|lang}"/>...
    devrait plutot s'écrire
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    ...<img src="{'/templates/$templateName/images/icone_info.gif'|resurl}" alt="" class="aide_description" title="'webmasterSubmitWebsite_website_desc_tooltip'|lang}"/>...
    A l'intérieur d'une chaine de caractères délimitée par des guillemets doubles, il faut soit utiliser des guillemets simples soit échapper les guillemets doubles à l'intérieur.

  12. #12
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2015
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2015
    Messages : 7
    Par défaut
    Citation Envoyé par NoSmoking Voir le message
    Bonjour,
    extrait de la discussion...

    il me semble que l'on peut en conclure raisonnablement qui c'est ton script qui ne va pas !
    Merci lysandro, en effet il y avait une erreur.

    Sinon pour en revenir au script je ne pense pas qu'il y ai une erreur car j'en ai essayé plusieurs et à chaque fois j'avais un message d'erreur différent. Vous me confirmez bien que pour connecter le script au textaera, j'ai juste à reprendre l'id de celui-ci et de le remplacer dans le script compteur de caractères / mots ?

Discussions similaires

  1. Réponses: 10
    Dernier message: 30/07/2009, 13h08
  2. Réponses: 5
    Dernier message: 21/01/2007, 00h43
  3. Compteur de caractères lors d'un saut de ligne
    Par blueman dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 22/06/2006, 10h08
  4. Compteur de caractères dans textarea en temps réél
    Par Jherek dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 22/03/2006, 18h03
  5. [Débutant]Comment ajouter un '.' au 2e caractère d'un mot?
    Par Chris_LaFouine dans le forum Langage
    Réponses: 3
    Dernier message: 22/07/2005, 12h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo