Gå til innhold

[Løst] Vise variabelnavnet, \n og andre kommandoer som tekst


Anbefalte innlegg

Jeg tenker å lage en nettside, som skal vise, og ikke utføre kommandoer.

Det jeg vil er at for eksempel:

 

<textarea rows="2" cols="20">

<?php

$antall = 59644;

echo "Dette er et bra forum.\nDen har $antall medlemmer.";

?>

</textarea>

 

Vil gi dette resultatet inni et textarea:

 

<?php

$antall = 59644;

echo "Dette er et bra forum.\nDen har $antall medlemmer.";

?>

 

Og ikke dette (som det ville gitt hvis jeg bare skrev koden inn på en nettside med endingen .php):

 

Dette er et bra forum.

Den har 59644 medlemmer.

 

Så hvordan kan jeg gjøre dette?

Lenke til kommentar
Videoannonse
Annonse

Kom på en løsning (htmlspecialchars ville ikke fungere slik jeg ville uansett).

 

Løsningen jeg kom opp med var å bruke php på <?php og ?>.

Altså:

 

<?php

echo "<?php";

?>

 

For <?php

Og:

 

<?php

echo "?>";

?>

 

For ?>

 

 

Du kan se resultatet med koden jeg skrev i mellom disse kodelinjene i vanlig php nederst på denne siden: http://heru.host22.com/htmlspecialcharstest.php

Lenke til kommentar

Det er går fint ann å bruke htmlspecialchars til det du beskriver i førsteposten.

Vil gi dette resultatet inni et textarea:

<?php

$antall = 59644;

echo "Dette er et bra forum.\nDen har $antall medlemmer.";

?>

 

<textarea rows="10" cols="40">
<?php
echo htmlspecialchars('<?php
$antall = 59644;
echo "Dette er et bra forum.\nDen har $antall medlemmer.";
?>');
?>
</textarea>

Lenke til kommentar

Du skulle altså ha denne koden(?):

 

<textarea rows="2" cols="20">

<?php

echo "<?php";

?>

$antall = 59644;

echo "Dette er et bra forum.\nDen har $antall medlemmer.";

<?php

echo "?>";

?>

<textarea>

 

Det var sånn jeg fant ut av det til slutt var en løsning som (føreløpig) går bra.

Lenke til kommentar

Det er går fint ann å bruke htmlspecialchars til det du beskriver i førsteposten.

Vil gi dette resultatet inni et textarea:

<?php

$antall = 59644;

echo "Dette er et bra forum.\nDen har $antall medlemmer.";

?>

 

<textarea rows="10" cols="40">
<?php
echo htmlspecialchars('<?php
$antall = 59644;
echo "Dette er et bra forum.\nDen har $antall medlemmer.";
?>');
?>
<textarea>

Jeg har nå prøvd å skrive det det står i php manualen, men det vil ikke fungere for meg, men uansett så står resultatet av skriptet som kommentar i eksempelet til php manualen, og det gir ikke koden som resultat, så det er bare en annen funksjon for å slippe å få kode kjørt.

 

Men forresten, nå trenger jeg å finne ut en funksjon som kan finne alle forekomster av en tekstststreng i en tekst, og kunne legge en angitt tekstststreng foran, og en angitt tekstststreng bak.

Lenke til kommentar

Problemet er at du bruker " (double quotes), da blir variabler og \n (o.l.) parset, ta en titt her: http://php.net/manual/en/language.types.string.php

 

Enten escape spesial tegn slik, escape char = \

echo "Dette er et bra forum.\\nDet har \$antall medlemmer.";

 

Eller sett alt i single quote slik

echo 'Dette er et bra forum.\nDet har $antall medlemmer.';

 

Vil du vise det på to linjer i textarea så kan du f.eks. gjøre slik

echo "Dette er et bra forum.\n" . 'Det har $antall medlemmer.';

Endret av Crowly
  • Liker 1
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...