Avatar billede Slettet bruger
17. juli 2004 - 21:22 Der er 12 kommentarer og
1 løsning

variabel og textarea problem

På min hjemmeside kan man have sin egen "signatur".

Før jeg INSERT'er den til databasen, formaterer jeg variablen med denne funktion:

function format(&$text)
    {
  /* $text = htmlspecialchars($text); */
    $text = ereg_replace("'","′",$text);
    $text = nl2br($text);
    return $text;
    }

men når jeg tager indholdet ud fra databasen i mit textarea, skriver den <br/>... er der en der kan fortælle mig hvorfor? og hvordan man ændrer det
Avatar billede erikjacobsen Ekspert
17. juli 2004 - 21:24 #1
Drop din nl2br ved indsættelse i databasen, og brug den kun ved normal visning.
Ved textarea skal du så bruge htmlspecialchars.
Avatar billede Slettet bruger
17. juli 2004 - 21:25 #2
ok, prøver lige selvom du altid har ret :D
Avatar billede Slettet bruger
17. juli 2004 - 21:28 #3
det virker, men jeg vil egentlig godt have nl2br på, da jeg også vil vise den andre steder end i textarea, kan det lade sig gøre at formatere variablen efter den er kommet ud af databasen ( med <br/>) så det bliver til \n?

har prøvet med $var = ereg_replace("<br/>", "\n", $var);
det virker ikke!
Avatar billede Slettet bruger
17. juli 2004 - 21:35 #4
den var straks værre :D
Avatar billede erikjacobsen Ekspert
17. juli 2004 - 21:38 #5
nej det skal du ikke. Du skal lade den blive i databasen uden <br> og sætte det
på når du udskriver den:

  print nl2br($dintekstudenbr);

C'est la vie ;)
Avatar billede Slettet bruger
17. juli 2004 - 21:38 #6
thx
Avatar billede Slettet bruger
17. juli 2004 - 21:38 #7
er der noget der hedde unnl2br() ?.. altså lave det tilbage igen?
Avatar billede Slettet bruger
17. juli 2004 - 21:39 #8
for jeg vil altså helst gemme den i databasen som <br/>, ligesom alt andet i databasen
Avatar billede Slettet bruger
17. juli 2004 - 21:47 #9
ok jeg bruger bare det andet.. thx erik
Avatar billede tipsen Nybegynder
18. juli 2004 - 18:08 #10
Ingen tvivl om at du skal gemme den i db'en i den rene form, som Erik også skriver - men den "unnl2br()" du efterspørger er jo blot:

$var = str_replace('<br />', '', $var);

Vær desuden opmærksom på at nl2br() ikke erstatter \n med <br />, men i stedet tilføjer det!

Mvh Tommy
Avatar billede Slettet bruger
18. juli 2004 - 19:20 #11
ok, thx. Jeg havde prøvet $var = str_replace('<br />', '\n', $var);

men så kom der jo naturligvis to mellemrum - ét for meget :D
Avatar billede Slettet bruger
20. juli 2004 - 09:49 #12
thx... luket
Avatar billede Slettet bruger
20. juli 2004 - 09:49 #13
med 2 k'er
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester