Comment envoyer chaque ligne d'un textarea en BDD ?

WRInaute passionné
Bonjour,

Voilà, je souhaite créer un script de marqueur, pour des fiches de lecture.
Pour ça, j'affiche un textarea.
L'utilisateur écrit un mot par ligne
ex :
marqueur1
marqueur2
marqueur3

Ce que je veux ensuite, c'est récupérer chaque ligne (ici marqueur1, marqueur2, marqueur3) afin de les insérer séparément dans la table marqueur (une ligne = un tuple donc)

on peut peut être fixer un nombre limite de tuple, par exemple 10.
Ou ne pas fixer de limite.


Mais comment faire pour scinder le contenu du textarea en fonction des retours à la ligne, pour séparer les tuples à créer :?:
 
WRInaute accro
Bein tu peux récupérer la valeur de ton champ textarea, et faire un explode de cette valeur avec comme valeur de séparateur /r/n.

Mais ergonomiquement il serait mieux de faire ça via des input text, en donnant la possibilité à l'utilisateur d'ajouter autant d'input text qu'il en a besoin (en ajax par exemple). C'est bien plus fiable niveau traitement des données, car dans le cas de ta textarea tu ne peux jamais être sûr que l'utilisateur respecte tes consignes.
 
WRInaute passionné
C'est vrai, mais l'ajax je ne connais pas encore et là je n'ai pas vraiment envie d'apprendre.

Ce que je peux faire alors, c'est limiter le nombre de marqueur à 5 et puis hop, j'affiche 5 champs... C'est moins souple, mais bon...
 
WRInaute accro
UsagiYojimbo a dit:
Sinon ca peut se faire directement en javascript ... mais j'avoue que passer par ajax au travers d'un framework comme prototype ou jquery me sied bien plus que ce genre de fonction.
en fait, AJAX veut dire Asynchronous JavaScript and XML c'est donc du js qui fait une interrogation à distance d'un serveur en recevant les résultats au format XML. Donc un script AJAX qui ne se connecte pas à distance reste juste du js
 
WRInaute accro
mais si tu veux séparer par mot, plutôt que de demander de passer à la ligne à chaque mot, tu peux utiliser un regex pour séparer les mots (espaces, ponctuation, passage à la ligne, ...)
 
Discussions similaires
Haut