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 :

Textarea, javascript et limite de caract�res


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �clair�
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    653
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 653
    Par d�faut Textarea, javascript et limite de caract�res
    Bonjour a tous,


    J'ai un petit souci a vous exposer:

    J'ai cr�� une petite admin en PHP avec identifiants et donc session

    J'ai un petit formulaire avec un texteara

    Code php : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    echo 'Commentaire<br>';
    $res_p = mysql_query("SELECT * FROM `table` where .................................");
    while($prt = mysql_fetch_array($res_p, MYSQL_ASSOC)){$text_p=$prt['text']; $text_p = str_replace(array('<br>'), array("\n" ), $text_p);$text_p = stripslashes($text_p);}
    <textarea style="width:100%; height:300px" id="com_pret" name="com" onblur="envoi_com(\'com\')">'.$text_p.'</textarea>

    Ensuite la fonction envoi_com() recupere l'ID de mon textarea pour la traiter en Javascript/Ajax s

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    function envoi_com (idA) {
    idC= 'S'+idA;
    var idC = document.getElementById(idA).value;
    while(idC.indexOf("\n")>0){idC = idC.replace("\n","<br>");}
    var xhr_object = null;
    if(window.XMLHttpRequest) xhr_object = new XMLHttpRequest();
    else if(window.ActiveXObject) xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
    else {alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");return;}
    xhr_object.open("POST", "sauve.php?toto=<?php echo $toto;?>&ong=com&"+idA+"="+idC, true);
    xhr_object.onreadystatechange = function() {if(xhr_object.readyState == 4) {document.getElementById("sauve_com").innerHTML = xhr_object.responseText;}}
    xhr_object.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    var data = "toto=<?php echo $toto;?>&ong=com&"+idA+"="+idC;
    xhr_object.send(data);
    }
    Le fichier sauve.php contient bien les include de session pas de souci.

    Je saisie un commentaire avec moins de 2804 caract�re et tout se passe bien

    Je saisie un commentaire de plus de 2804 caract�re et la un truc bizarre se produit:
    Le commentaire arrive bien jusqu'au fichier sauve.php, il est en bien trait� par le php du fichier et bien sauvegard� dans la BDD SQL
    MAIS JE PERDS LA CONNEXION DONC LES SESSIONS

    Alors qu'avec moins de 2804 caract�res saisie la session est conserv�e.

    Avez vous une id�e de de piste de reflexion, s'il vous plait.

    Merci milles fois a tout ceux qui auront le temps de me lire.

    Olivier

  2. #2
    Expert confirm�
    Avatar de sekaijin
    Homme Profil pro
    Urbaniste
    Inscrit en
    Juillet 2004
    Messages
    4 205
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 61
    Localisation : France, Yvelines (�le de France)

    Informations professionnelles :
    Activit� : Urbaniste
    Secteur : Sant�

    Informations forums :
    Inscription : Juillet 2004
    Messages : 4 205
    Par d�faut
    Pourrait-on avoir du JavaScript et du HTML et non du PHP*?

    si tu avais ouvert ton code dans le navigateur, tu aurais compris d'o� vient l'erreur

    Tu places tes donn�es dans l'URL et dans data.
    Or la taille d'une URL est limit�e
    A+JYT

  3. #3
    Expert confirm�
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 100
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 36
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activit� : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 100
    Par d�faut
    Je vais �tre un peu hors sujet mais voil� : j'ai l'impression que la communaut� JavaScript a encore beaucoup � apprendre quant au signalement des erreurs � l'utilisateur.

    Sc�nario : ma grand-m�re (ou la grand-m�re de qui tu veux) navigue sur ton site et re�oit le message suivant :
    Votre navigateur ne supporte pas les objets XMLHTTPRequest...
    �a lui fait une belle jambe. Que doit-elle comprendre ? Que doit-elle faire ? Elle est livr�e � elle-m�me. Il y a fort � parier qu'elle va quitter ton site.

    Dans ce genre de cas il y a deux approches :
    � soit tu expliques clairement ce que l'utilisateur peut faire pour utiliser ton site convenablement ;
    � soit tu fais en sorte que ton site se d�grade gracieusement pour continuer � fonctionner avec des fonctionnalit�s r�duites.

    Pour moi, la premi�re approche est la plus difficile. Vraisemblablement, tu pourrais recommander � l'utilisateur de mettre � jour/changer de navigateur. Mais comment le faire avec tact, concision et clart� ? Comment faire en sorte que ceux qui ne peuvent pas changer de navigateur (par exemple sur leur lieu de travail) ne se sentent exclus ?
    De plus, certains ergonomes estiment que tu n'as pas � imposer � l'utilisateur la fa�on dont il visite ton site.

    La seconde approche est tout � fait r�alisable quand on parle d'Ajax, car toute fonctionnalit� de site Web mise en �uvre avec Ajax peut �tre mise en �uvre minimalement sans Ajax, par des liens et des formulaires classiques.
    La FAQ JavaScript � Les cours JavaScript
    Touche F12 = la console → l�outil indispensable pour d�velopper en JavaScript !

  4. #4
    Membre �clair�
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    653
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 653
    Par d�faut
    Bonsoir,

    Je vous remercie a tous les deux pour vos r�ponses, bien que je ne saisisse pas le sens de toutes .

    En clair, �videmment j'ai zapp� que dans une url la taille de la chaine de caract�re etait limit�, donc le javascript, enfin l'ajax me limite (DATA), enfin l'URL, on s'est compris ...

    Par contre si je passe par un formulaire en POST je ne suis pas limit�.. or justement je voulais eviter le rafraichissement de la page.. pffff

    Donc je n'ai pas le choix.

    Merci encore !

    voir info ici : http://support.microsoft.com/kb/208427


    P.S je ne ferme pas ce topic car si il existe une solution miracle je suis toujours preneur

  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
    sekaijin t'a d�j� r�pondu
    Pourquoi veux-tu absolument passer tes variables dans l'url (notamment celles qui posent des probl�mes de taille) puisque tu les passe aussi dans data ? En d'autres termes supprime les variables de la ligne
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    xhr_object.open("POST", "sauve.php?toto=<?php echo $toto;?>&ong=com&"+idA+"="+idC, true);
    ou garde en quelques unes mais pas besoin de faire de doublons avec celles que tu passe dans le send.

  6. #6
    Membre �clair�
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    653
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 653
    Par d�faut
    Je suis d�sol�s, dans ce cas, je n'ai rien compris a ce que j'ai cod� alors.

    Je pensais qu'il fallait que je tape les deux fonctions

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    xhr_object.open("POST", "sauve.php?toto=<?php echo $toto;?>&ong=com&"+idA+"="+idC, true);
    et

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    var data = "toto=<?php echo $toto;?>&ong=com&"+idA+"="+idC;
    Pour que la fonction donne le r�sultat, car tous les exemples donn�s se traduisent avec ces deux fonctions.

    Si je vous suis, je peux simplement mettre les infos dans le data et je n'aurai plus le probleme de limitation du a la taille max de la chaine dans une URL ?

Discussions similaires

  1. Limite Textarea, Ligne et Nombre de caract�res par ligne
    Par michelS dans le forum G�n�ral JavaScript
    R�ponses: 3
    Dernier message: 10/11/2010, 14h00
  2. [JTextField]limiter les caract�res ?
    Par Baptiste Wicht dans le forum AWT/Swing
    R�ponses: 8
    Dernier message: 27/12/2005, 12h12
  3. R�ponses: 1
    Dernier message: 18/08/2005, 15h11
  4. limite de caract�re sur un type="texte"
    Par auduma dans le forum Balisage (X)HTML et validation W3C
    R�ponses: 2
    Dernier message: 18/03/2005, 14h06
  5. Varchar2 limit� � 256 caract�res (SQLLoader, 9i)
    Par nuke_y dans le forum SQL*Loader
    R�ponses: 2
    Dernier message: 09/11/2004, 12h20

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