Texte area pour chat probleme

Résolu
thomascre Messages postés 454 Date d'inscription   Statut Membre Dernière intervention   -  
Cocoduf Messages postés 46 Statut Membre -
bonjour,
je suis en train de créer des sites mais dés le debut je block a un vieu probleme : j'ai fait un chat;
-il marche comme je veus, les regle son OK, les news du site marche, les mini-chat aussi, c'est col, mais voila :
les utilisateur du chat son obliger de taper certain code pour certaine action car le formulair d'envoi des message envoi du code brute, don par exemple les gens son obliger de fair les code comme <br> pour les retour a la ligne,
on m'a dit d'utiliser text-area avec javascript pour fair les bon formulaire, mais je ne connai rien en javascript !
si une gentille personne pouvai me donner un bout de code se serai sympa ;)
actuellement sa ressemble a sa :
<label for="message"></label>

:

<input id="message" type="text" name="message"></input>
merci de votre aide
cordialement thomas

--
installer un programme pour en supprimer un autre: inutile
demander comment faire et se casser nu peu la tête : utile efficace et sans problème supplémentaire ;)

3 réponses

  1. thomascre Messages postés 454 Date d'inscription   Statut Membre Dernière intervention   38
     
    en soi sela fonctionne, mais voila quel etai mon but :
    quand une personne fait un retour a la ligne, sa enregistre automatiquement un <br>, et des chose de ce genre vous voyer !
    pouriez-vous m'aider ?
    1
    1. Cocoduf Messages postés 46 Statut Membre 14
       
      Peux-tu me montrer le code que tu as qui enregistre les messages
      0
    2. thomascre Messages postés 454 Date d'inscription   Statut Membre Dernière intervention   38
       
      sa fai un peu bazard mais bon, voila :
          <form action="minichat_post.php" method="post">
      <p>
      <label for="pseudo">Pseudo</label> : <input readonly="readonly" type="text" name="pseudo" id="pseudo" value="<?php $dnn = mysql_fetch_array(mysql_query('select username from users where username="'.$_SESSION['username'].'"')); $point = htmlentities($dnn['username'], ENT_QUOTES, 'UTF-8'); echo $point; ?>"/><br />
      <label for="message">Message</label> : <textarea id="message" name="message"></textarea><br />

      <input type="submit" value="Envoyer" />
      </p>
      </form>
      0
    3. Cocoduf Messages postés 46 Statut Membre 14
       
      je parlais du code de minichat_post.php :P
      0
    4. thomascre Messages postés 454 Date d'inscription   Statut Membre Dernière intervention   38
       
      a dsl, je fai plusieur chose a la foi donc je me trompe, voila :
      <?php
      try
      {
      $bdd = new PDO('mysql:host=top secret;dbname=top secret', 'encor top secret', 'toujour top secret');
      }
      catch(Exception $e)
      {
      die('Erreur : '.$e->getMessage());
      }

      $bddgg = $bdd->query('SELECT * FROM chat2');
      $bddg = $bddgg->fetch();

      $idd = $bddg['id'];
      $id = $idd + 1;

      $req = $bdd->prepare('INSERT INTO minichat2 (id, pseudo, message) VALUES('.$id.', ?, ?)');
      $req->execute(array($_POST['pseudo'], $_POST['message']));
      $req2 = $bdd->prepare("UPDATE chat2 set id='". $id ."'");
      $req2->execute(array($id));
      mysql_query("UPDATE chat2 SET id='". $id ."'");


      header ("Location: $_SERVER[HTTP_REFERER]");
      ?>
      c'est un peu le bazar aussi, je l'avai fait "a la rache" mais tan que sa marche XD
      0
    5. Cocoduf Messages postés 46 Statut Membre 14
       
      en fait il existe deux solution, la première serait que lorsque les messages sont affichés, tu insères en même temps des balises <br />
      mais sinon la deuxième solution c'est que lorsque tu reçoit le message par l'intermédiaire de $_POST['message'] il suffit d'y ajouter un "<br />" tu dois pour cela concaténer les chaînes, et normalement c'est bon ^^
      0
  2. Cocoduf Messages postés 46 Statut Membre 14
     
    Tu devrais le traiter du côté de PHP
    Si tu ne peux pas (raison x ou y), il faut que le message que tu envoie à PHP soit traité avant par Javascript (je suppose que tu n'utilises pas Ajax)
    Il faut donc que tu récupère la valeur du message et que tu lui ajoutes par exemple "<br />" pour un retour à la ligne
    En gros ça donne
    var boite_msg = document.getElementById('message');
    boite_msg.addEventListener('keydown', function(e)  {
      if (e.keyCode == 13) { // La touche entrer
        var message = boite_msg.value + "<br />"; // ajoute ce que tu veux
        boite_msg.value = message;
        return true;
      }
      return false;
    });
    

    Si je me suis trompé, ou que j'ai pas bien compris ou que tu as besoin d'info n'hésite pas

    EDIT
    J'ai relu en fait et j'ai un peu mieux compris et oublie le code d'avant ce que tu dois faire c'est remplacer
    <input id="message" type="text" name="message"/>

    par
    <textarea id="message"  name="message"></textarea>
    et ça doit marcher
    0
  3. thomascre Messages postés 454 Date d'inscription   Statut Membre Dernière intervention   38
     
    je peu tres bien me passer de java (sa m'arange XD )
    je n'ai pas vraiment ompri, comment caler ton bou de code et comment fonction-il ?
    je tien a presiser que j'ai les "base" :/
    cordialement thomas
    0
    1. Cocoduf Messages postés 46 Statut Membre 14
       
      Essaie juste de remplacer
      <input id="message" type="text" name="message"/>

      par
      <textarea id="message"  name="message"></textarea>
      et ça doit marcher
      Tu me diras si ça marche :)
      oublie le code javascript
      0