Linieskift og stort bugstav.

Tags:    php

<< < 12 > >>
Hej derude.

Hvis jeg har en <form> med et <textarea> og brugeren som skriver noget i mit <textarea> hjemmeside skal kunne lave linieskift (enter) er der så en måde hvorpå jeg kan gøre sådan at der automatisk kommer et <br> ind i strengen ved linieskift? Foreksempel hvis den tekst som brugeren skriver senere skal bruges til en profiltekst eller lignende.

Og så lige et spørgsmål mere. Er der en simpel måde hvor jeg kan gøre det første bugstav i en streng stort (UPPERCASE). Så det ser pænere ud når det er vist på min side? Min ide var at bruge srt_split() til at splitte strengen og så gøre det første bugstav stort med strtoupper() og samle strengen igen. Men det må kunne gøre nemmere.



Indlæg senest redigeret d. 29.02.2008 23:58 af Bruger #13254
11 svar postet i denne tråd vises herunder
4 indlæg har modtaget i alt 4 karma
Sorter efter stemmer Sorter efter dato
Hej Oliver,

Jeg er ikke helt sikker på jeg forstår dig, men kig evt. på funktionen nl2br.

M.v.h. Johnny



Mig bekendt findes der ikke funktion der hedde br2nl kun nl2br
det du kan gøre at bruge str_replace

Fold kodeboks ind/udKode 


den søger efter <br /> tags og skfiter ud med \\r\\n som svare til linjeskift.

i ngole tilfælde vil man nøje med linjeskift \\n og undlade carriagereturn \\r



Jo da br2nl findes. Men det er bare sjællent at man skal bruge den.

Heh. Fandt en løsning.

Jeg lader bare være med at gemme det i databasen med <br> og så bruger jeg nl2br når jeg henter den ind fra databasen til HTML dokumentet. Det virker faktisk. Jeg vidste ellers ikke at man kunne gemme data med linjeskift ind i MySql. Men nåh ja, man lære hele livet :D


Du bør forstå at et linjeskift er jo bare en del af en string. Du ser bare aldrig tegnene fordi der hvor du viser stringen så bliver de tegn tolket til et linjeskift.



Indlæg slettet af admin/co-admin!


Mvh.

Kasper (TSW)



Okay har lige løst det med stort bugstav. Skulle bare bruge ucfirst(). Men mangler stadig det med linjeskift :D



Jep den havde jeg også fundet frem til. Nu virker det. Tak for hjælpen.



Hey. Har lige fundet et problem i det. Når jeg så henter dataen ind i en <textbox> igen for at redigere det, så står det <br> alle steder hvor der er linjeskift. Er der en måde hvorpå jeg kan lave det om. Så den viser normalt linjeskift i textboxen, men skriver <br> når det bliver skrevet ind i min database?

Jeg kunne forestille mig at det bare er noget med at bruge en function det laver <br> om til normalt linjeskift og så bare sætte den ind når jeg henter data ind i min textbox fra databasen. Jeg har jo allerede en function der laver normalt linjeskift om til <br> når den skriver det ind i databasen.

Jeg har ledt en del. Men eftersom nl2br() ikke fjerner linjeskift i den originale sætning men bare indsætter <br> ved hvert linjeskift. Så er det man skal gøre bare at fjerne alle <br> i ens string og så er man klar. Derfor kan br2nl() ikke bruges. Den fordobler bare antallet af linjeskift hver gang :D

Måske skal man bare bruge en function der fjerner alle <br /> i ens string. Men hvad hedder den?



Oliver, du skal gemme selve "strengen" som normal. Og så bå siden hvor du vil vise teksten skal du bruge nl2br, således at det i databasen ligger med \\n som linjeskift.



Jo da br2nl findes. Men det er bare sjællent at man skal bruge den.

Heh. Fandt en løsning.

Jeg lader bare være med at gemme det i databasen med <br> og så bruger jeg nl2br når jeg henter den ind fra databasen til HTML dokumentet. Det virker faktisk. Jeg vidste ellers ikke at man kunne gemme data med linjeskift ind i MySql. Men nåh ja, man lære hele livet :D



Hmm. ifl. uk.php.net og dk.php.net er der ikke en funktion der hedder br2nl.

Men det er også en bedre løsning at gemme den uden br i databasen.



<< < 12 > >>
t