11. februar 2008 - 23:42Der er
40 kommentarer og 1 løsning
Tabel udvides ved indsættelse af meget tekst
Godt nok er det meget sent, men det er vinterferie, så håber der stadig er nogle på (:
Ja, overskriften siger lige lidt. Jeg har aldrig før haft problemet, men af en eller anden grund, så bliver tabellen større i bredden, hvis man indtaster meget tekst.
Teksten bliver udskrevet med nl2br, så jeg kan simpelt hen ikke forstå det.
Hvis man på "indtastnings siden" selv trykker Enter i textarea'et, så kommer der linieskift, men hvis man bare taster derud af, så selvom den automatisk er hoppet ned på næste linie, så kommer der ikke noget linie skift?
Jeg forstår det simpelthen ikke. Der er defineret width i både tabellen og td'en.
Nogle der har nogle "ideer" til hvorfor følgende sker?
- og der kommer ikke noget linjeskift i den tekst, der indsættes i DB, med mindre der tastes 'Return' i textarea'et ... uagtet, at linjen 'knækker' dér.
Når du viser teksten, kommer der kun linjeskift i tabellen, hvis der er mellemrum mellem ordene. En meget lang streng vil ikke 'knække', men udvide tabellen - og den slags brugerindlæg bør bare forkstes ved en simpel validering på serveren
Hvis jeg f.eks taster "test" og trykker submit, så vises tabellen i den angivne størrelse (width=500)
Hvis man så f.eks istedet taster kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
Så bliver tabellen meget længere, og der bliver ikke holdt width=500 længere.
Nå, ok. Så. Du mener at du skriver en tekst uden mellemrum. Det kunne du da godt have forklaret ganske præcist i spørgsmålet. En mellemrumstast er stadig en tast hos mig.
Men altså en tabel udvider sig efter indholdet. Li'som en ballon og andre lignende genstande. På en <div> kan du sætte noget med "overflow", men så kan man jo ikke se alle de kønne bogstaver.
Hva' si'r du til Oles forslag om bare at smide sådan noget skrammel langt væk?
Nu skal du ikke prøve at taste 250.000 k'er ind her på eksperten.dk - det er synd for deres database ;) Men der kommer garanteret ingen linieskift. Men du kan se mindre end 1 promille af dem.
Man må ikke sætte et vilkårligt linieskift ind i programkode, så derfor gør eksperten.dk ikke noget ved for lange tekster uden mellemrum.
Men det er dig, der skal bestemme, hvad der sker på dit site. Det kan jeg ikke, Ole heller ikke (selv om han sikkert gerne ville), og ej heller paven, eller den kommende præsident for den Nordamerinske Sammenslutning af Stater.
Ja, og nej. Nej fordi man ikke kan vide præcist hvor meget en tekst fylder, men ja, fordi dit script kan sætte en mellemrum ind for hvert 20. tegn (f.eks.).
Nu kan man i programkode sagtens have "ikke-mellemrums-sekvenser" længere end 20 tegn. Hvis man lægger dem på eksperten, vil man ikke have et mellemrum sat ind et "tilfældigt" sted. Men det er måske hvad du vil have. Eller du kan få scrollbars på.
Der findes selvfølgelig også lange ord: "overmotorsagskyndigprøvesagkyndig". Hvis du deler efter 20 tegn står der "overmotorsagskyndigp" på den ene linie og "røvesagkyndig". Det ser lidt sjovt ud, hvis man kun læser linie nummer 2. Og det kan være meget værre.
Så vil du lave om i dine besøgendes tekst, eller ... ?
Er det muligt at lave, så at filen der indsætter til databasen, automatisk indsætter et mellemrum efter "ordet" man har skrevet, hvis ordet er på over 100 tegn uden mellemrum ?
Det er jo ikke sikkert, hvis en person skriver for at spamme. Så vil personen som regel bare holde en knap i bund, f.eks h knappen, og så slipper man knappen efter nogle sekunder og trykker submit.
Hvorfor insisterer du dog på at tillade dine brugere at spamme dine sider?
- og hvad er det, du finder så meningsfyldt ved 2000 på hinanden følgende k'er - adskilt i blokke på 100 - at du mener, WWW ikke kan være dem foruden? =)
Jeg kan fortsat ikke se hvad det generelt skulle gavne, at sætte et mellemrum efter et ord. Men det kan give en hvis mening at sætte et mellem inde i et langt ord for hver 20. tegn (eller et andet tal du bestemmer). Du skal bare gøre det inden Ole vågner ;)
nwm, der er blevet sagt 5-6 gange at det er en dårlig idé (måske flere). Er der nogen der skriver sådan i din gæstebog, så er det for at ødelægge for dig. Derfor, lad være med at poste indlægget ;o) Men hvis du absolut insistere på at lade folk ødelægge for dig, kan du kigge på: http://dk.php.net/wordwrap
Jamen, det er slet ikke det, der er tale om, Erik. Læs (12/02-2008 00:55:52), som også besvarer dit tidiligere spørgsmål (12/02-2008 08:12:14) om, hvor h'et kom fra ;o)
Jeg er derfor stadig voldsomt interesseret i at få nwn's svar på mit spørgsmål fra før: "- og hvad er det, du finder så meningsfyldt ved 2000 på hinanden følgende k'er - adskilt i blokke på 100 - at du mener, WWW ikke kan være dem foruden?" =)
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.