I have an input form on my website where HTML is allowed and I'm trying to add instructions about the use of HTML tags. I'd like the text to

<strong>Look just like this line - so then know how to type it</strong> 

But so far all I get is:

Look just like this line - so then know how to type it

How can I show the tags so people know what to type?

0

11 Answers

Replace < with &lt; and > with &gt;.

4

In PHP use the function htmlspecialchars() to escape < and >.

htmlspecialchars('<strong>something</strong>') 
0

As many others have said, htmlentities() will do the trick... but it will look like shit.

Wrap it up with a <pre> tag and you'll preserve your indentation.

echo '<pre>'; echo htmlspecialchars($YOUR_HTML); echo '</pre>'; 
0

You should use htmlspecialchars. It replaces characters as below:

  • & (ampersand) becomes &amp;
  • " (double quote) becomes &quot; when ENT_NOQUOTES is not set.
  • ' (single quote) becomes &#039; only when ENT_QUOTES is set.
  • < (less than) becomes &lt;
  • > (greater than) becomes &gt;

you may use htmlspecialchars()

<?php $new = htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES); echo $new; // &lt;a href=&#039;test&#039;&gt;Test&lt;/a&gt; ?> 

You just need to encode the <>s:

&lt;strong&gt;Look just like this line - so then know how to type it&lt;/strong&gt; 

To display HTML tags within a browser, surround the output with < xmp> and < / xmp> tags

2

You can use htmlentities when echoing to the browser, this will show the tag rather than have html interpret it.

See here

Example:

 echo htmlentities("<strong>Look just like this line - so then know how to type it</strong>"); 

Output:

<strong>Look just like this line - so then know how to type it</strong> 

The native JavaScript approach -

('<strong>Look just ...</strong>').replace(/</g, '&lt;').replace(/>/g, '&gt;'); 

Enjoy!

2

There is another way...

header('Content-Type: text/plain; charset=utf-8'); 

This makes the whole page served as plain text... better is htmlspecialchars...

Hope this helps...

Use htmlentities() to convert characters that would otherwise be displayed as HTML.

0