Avatar billede mikl-dk Nybegynder
13. februar 2004 - 21:27 Der er 6 kommentarer og
1 løsning

Problemer med variabel indholdende " og ' i form input

Hej,

Jeg har en variabel:
$navn = 'Mikkel "hej med dig"';

Når jeg indsætter den i et HTML input sker der det ærgeligt pga ":
echo "<input type=\"text\" name=\"navn\" class=\"input\" maxlength=\"200\" value=\"$navn\" />";

Hvis jeg laver ' omkring value i stedet for \" virker det jo - indtil jeg bruger ' i navn! How?!
Avatar billede htm Nybegynder
13. februar 2004 - 21:31 #1
echo "<input type=\"text\" name=\"navn\" class=\"input\" maxlength=\"200\" value=\"" . $navn . "\" />";
Avatar billede mikl-dk Nybegynder
13. februar 2004 - 21:34 #2
Det hjælper jo ikke, da " i $navn stadig vil forstyrre HTML-koden?
Avatar billede detox Nybegynder
13. februar 2004 - 21:37 #3
Hvad med:

$navn = htmlentities('Mikkel "hej med dig"');
Avatar billede mikl-dk Nybegynder
13. februar 2004 - 21:41 #4
detox, ja det virker...
Fik et tip om det @ IRC, men troede ikke selv det virkede :) Nu virker det.... smid et svar...
Avatar billede detox Nybegynder
13. februar 2004 - 21:44 #5
Jo c",)
Avatar billede domaz.dk Novice
13. februar 2004 - 21:55 #6
du skal lige huske at "vende den om" når du sender den ud af inputet ;)

function unhtmlentities($string)
{
  $trans_tbl = get_html_translation_table(HTML_ENTITIES);
  $trans_tbl = array_flip($trans_tbl);
  return strtr($string, $trans_tbl);
}

$tekst = unhtmlentities($tekst);
Avatar billede mikl-dk Nybegynder
13. februar 2004 - 22:13 #7
Det er ikke nødvendigt, da jeg viser den i HTML, så der skal den også htmlenteties'es :)
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