Problème gestion espace dans une chaine php
axelandre
Messages postés
37
Statut
Membre
-
avion-f16 Messages postés 20367 Statut Contributeur -
avion-f16 Messages postés 20367 Statut Contributeur -
Bonjour,
Je planche sur un problème et je n'arrive pas à trouver la solution.
en fait j'ai un formulaire avec des textarea dont le nombre de caractère est limité à 470. Ensuite lors de la soumission, un pdf est créé avec les données renseignées.
Le problème c'est que si l'utilisateur à fait un retour chariot et bien cela casse mon pdf. En effet, chaque textarea est ensuite contenu dans un encadré sur le pdf. mais ces encadré ne se redimensionnent pas en fonction du contenu.
Donc pour pallier à cela, j'ai donc limité le nombre de caractères et aussi interdit les retour chariot (touche ENTREE désactivée quand il y a focus sur un textarea).
Mais des utilisateurs ont contourné l'erreur en faisant plein d'espaces à la suite afin de retourner à la ligne ! Franchement, quelle idée, enfin bref.
Donc j'ai trouvé un script sur le net qui est censé mettre une limite de lignes dans le textarea (genre 4 lignes maimum) mais il ne fonctionne pas.
Du coup j'ai voulu contourner ce problème en cherchant dans la chaine, les doubles espaces pour les remplacer par un seul espace.
Le problème, c'est que si je fais un echo de la variable contenant la valeur du textarea, celui-ci affiche le contenu sans prendre en compte tous les espaces qui s'enchainent. Mais lors de la génération du pdf (avec fpdf), les espaces et donc retour à la lignes causés par ces derniers sont bel et bien présent et mon pdf se retrouve encore une fois cassé !
je ne voit pas comment fpdf peut interpreter ces espaces alors que la variable en ophp n'en contient pas.
Si quelqu'un a une solution à ce problème je suis preneur car c'est un module que j'ai créé pour ma boite et il y a cette erreur qui gache tout ! (bien que tout les commerciaux ne soient pas aussi gland que certains !)
merci à tous
Je planche sur un problème et je n'arrive pas à trouver la solution.
en fait j'ai un formulaire avec des textarea dont le nombre de caractère est limité à 470. Ensuite lors de la soumission, un pdf est créé avec les données renseignées.
Le problème c'est que si l'utilisateur à fait un retour chariot et bien cela casse mon pdf. En effet, chaque textarea est ensuite contenu dans un encadré sur le pdf. mais ces encadré ne se redimensionnent pas en fonction du contenu.
Donc pour pallier à cela, j'ai donc limité le nombre de caractères et aussi interdit les retour chariot (touche ENTREE désactivée quand il y a focus sur un textarea).
Mais des utilisateurs ont contourné l'erreur en faisant plein d'espaces à la suite afin de retourner à la ligne ! Franchement, quelle idée, enfin bref.
Donc j'ai trouvé un script sur le net qui est censé mettre une limite de lignes dans le textarea (genre 4 lignes maimum) mais il ne fonctionne pas.
Du coup j'ai voulu contourner ce problème en cherchant dans la chaine, les doubles espaces pour les remplacer par un seul espace.
Le problème, c'est que si je fais un echo de la variable contenant la valeur du textarea, celui-ci affiche le contenu sans prendre en compte tous les espaces qui s'enchainent. Mais lors de la génération du pdf (avec fpdf), les espaces et donc retour à la lignes causés par ces derniers sont bel et bien présent et mon pdf se retrouve encore une fois cassé !
je ne voit pas comment fpdf peut interpreter ces espaces alors que la variable en ophp n'en contient pas.
Si quelqu'un a une solution à ce problème je suis preneur car c'est un module que j'ai créé pour ma boite et il y a cette erreur qui gache tout ! (bien que tout les commerciaux ne soient pas aussi gland que certains !)
merci à tous
A voir également:
- Problème gestion espace dans une chaine php
- Espace insécable - Guide
- Espace de stockage gmail plein - Guide
- Chaine tnt gratuite sur mobile - Guide
- Logiciel gestion locative gratuit excel - Télécharger - Comptabilité & Facturation
- Espace stockage google - Guide
1 réponse
Salut
C'est impossible de savoir le nombre de ligne que ça va prendre sur le PDF pour plusieurs raisons :
* Il faut voir la taille et la police que tu utilises ainsi que d'autres réglages de la police
* L'ordinateur peut voir le retour en texte brute mais pas la façon dont ça s'affichera.
Si tu n'as pas compris la deuxième étoile : Regarde le texte suivant, il s'affiche en plusieurs lignes :
aaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbb cccccccccc d d dddddddddkkkkkkkkkkk i h ccccccccc fff ffezf eezfef efze fezfe fe fez fez f ezf ez fe zf ze fez f zf z z f zf f f efr vfd g dggdsgfd gr gre grggregrd fvd vbh j uj fds fdsfrgtr gsgdfgtr gfdgfdgtrgh trgfdsgtr gtrgfdg rft
Maintenant fais un copier/coller dans le Bloc-Notes et élargi le suffisament : C'est une seule ligne
C'est impossible de savoir le nombre de ligne que ça va prendre sur le PDF pour plusieurs raisons :
* Il faut voir la taille et la police que tu utilises ainsi que d'autres réglages de la police
* L'ordinateur peut voir le retour en texte brute mais pas la façon dont ça s'affichera.
Si tu n'as pas compris la deuxième étoile : Regarde le texte suivant, il s'affiche en plusieurs lignes :
aaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbb cccccccccc d d dddddddddkkkkkkkkkkk i h ccccccccc fff ffezf eezfef efze fezfe fe fez fez f ezf ez fe zf ze fez f zf z z f zf f f efr vfd g dggdsgfd gr gre grggregrd fvd vbh j uj fds fdsfrgtr gsgdfgtr gfdgfdgtrgh trgfdsgtr gtrgfdg rft
Maintenant fais un copier/coller dans le Bloc-Notes et élargi le suffisament : C'est une seule ligne