Texte area pour chat probleme [Résolu/Fermé]

Signaler
Messages postés
448
Date d'inscription
vendredi 21 octobre 2011
Statut
Membre
Dernière intervention
8 octobre 2017
-
Cocoduf
Messages postés
38
Date d'inscription
mardi 17 juin 2014
Statut
Membre
Dernière intervention
18 juin 2014
-
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

3 réponses

Messages postés
448
Date d'inscription
vendredi 21 octobre 2011
Statut
Membre
Dernière intervention
8 octobre 2017
32
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
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 85991 internautes nous ont dit merci ce mois-ci

Cocoduf
Messages postés
38
Date d'inscription
mardi 17 juin 2014
Statut
Membre
Dernière intervention
18 juin 2014
13
aahhhhhhhh ok XD
Pour ça si mes souvenirs sont bons il faut que tu traites $message ainsi :
$message = str_replace(array("\r\n","\n"), '<br />', $message);

Ça va simplement remplacer les \n (retours chariots du TEXTAREA) en <br/>, retours à la ligne interprétable par le navigateur et normalement, tout va rentrer dans l'ordre !
thomascre
Messages postés
448
Date d'inscription
vendredi 21 octobre 2011
Statut
Membre
Dernière intervention
8 octobre 2017
32
ok... jle cale ou svp?
dit tu connaiterai pas 2/3 truc util en C svp ?
Cocoduf
Messages postés
38
Date d'inscription
mardi 17 juin 2014
Statut
Membre
Dernière intervention
18 juin 2014
13
En gros ton code devient
<?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;

$message = $_POST['message'];
$message = str_replace(array("\r\n","\n"), '<br />', $message);

$req = $bdd->prepare('INSERT INTO minichat2 (id, pseudo, message) VALUES('.$id.', ?, ?)');
$req->execute(array($_POST['pseudo'], $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]");
?>

et non pas de C dsl
thomascre
Messages postés
448
Date d'inscription
vendredi 21 octobre 2011
Statut
Membre
Dernière intervention
8 octobre 2017
32
genial sa merche, merci
t'est un geni ;)
bonne soirer ;)
cordialement thomas
Cocoduf
Messages postés
38
Date d'inscription
mardi 17 juin 2014
Statut
Membre
Dernière intervention
18 juin 2014
13
de rien :)
(oublie pas de mettre en résolu)
Messages postés
38
Date d'inscription
mardi 17 juin 2014
Statut
Membre
Dernière intervention
18 juin 2014
13
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
Messages postés
448
Date d'inscription
vendredi 21 octobre 2011
Statut
Membre
Dernière intervention
8 octobre 2017
32
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
Cocoduf
Messages postés
38
Date d'inscription
mardi 17 juin 2014
Statut
Membre
Dernière intervention
18 juin 2014
13
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