Why is my php code showing in browser?

In case we are in the same page do following

sudo apt-get install php -y sudo apt-get install php-{bcmath,bz2,intl,gd,mbstring,mysql,zip,fpm} -y

To enable PHP 7.2 FPM in Apache2 do:

a2enmod proxy_fcgi setenvif

a2enconf php7.2-fpm

update 2: Apache downloads .php file instead of rendering

After that, I faced above issue. There are similar questions like this.

I don't know why but it only happened for my .php files in /var/www/html/ root folder. everything was ok for sub-directories. [for example wordpress and phpmyadmin worked fine]

So here is my solution. I decided to enable php module. so I ran this command:

a2enmod php7.2

but I got this errors:

Considering dependency mpm_prefork for php7.2: Considering conflict mpm_event for mpm_prefork: ERROR: Module mpm_event is enabled - cannot proceed due to conflicts. It needs to be disabled first! Considering conflict mpm_worker for mpm_prefork: ERROR: Could not enable dependency mpm_prefork for php7.2, aborting

so I decided to disable mpm by running following commands:

sudo a2dismod mpm_prefork
sudo a2dismod mpm_worker
sudo a2dismod mpm_event

then restart apache:

systemctl restart apache2

then enable php7.2 [my installed version]:

sudo a2enmod php7.2

and right now everything works fine.

If your browser is displaying PHP code, it means that your server has not been setup to serve PHP scripts. Here is a list of things that you need to check in order to fix this issue.

Firstly, make sure that you are saving your PHP files in UTF-8.

In the past, a number of developers have reported an issue where saving the file in other charsets led to their opening and closing PHP tags being ignored.

Failing that, there are a number of other questions that you need to ask yourself.

Is PHP installed?

Did you install PHP?

A lot of servers will only serve HTML files by default. More often than not, you will need to install PHP and configure it to work with your web server.

If you do not have control over the server that you are uploading your files to, then you will need to contact your hosting provider.

On a number of occasions, I have come across lower-end hosting packages that do not support any server-side scripting languages. In other words, they were HTML only.

Make sure that this isn’t the case with the package that you are using.

If you do have control over the server, then you will need to make sure that PHP is properly installed. If you search around, you will find hundreds of tutorials on how to setup PHP and Apache/Nginx to work on Windows, Linux and Macintosh.

Misconfigurations.

If PHP is installed and your code is still showing in the browser, then you may have fallen victim to a simple misconfiguration.

More often than not, this kind of issue can be solved by uncommenting a line in a configuration file.

For example, in Apache’s httpd.conf file, you will need to make sure that the line “LoadModule php5_module” has been uncommented and that there is no semi-colon [;] at the beginning of the line.

Restart your web server.

If you’re pretty sure that everything has been setup correctly and you haven’t fallen victim to a misconfiguration, then you should make sure that you have restarted your web server.

More often than not, you will need to restart Apache or Nginx for the changes to take effect.

This is because they only read the configuration file on startup.

Are you using the .php extension?

If you have done all of that and your code is still being displayed in the browser, then you will need to make sure that your files are using the .php extension.

PHP code will not be executed if it is saved inside a .html file.

Well, not unless you’ve specifically configured your web server to do so.

Make sure that you are running it through your web server.

Lastly, you will need to make sure that you are actually running your files via a web server.

A lot of beginner PHP developers make the mistake of opening the page via their file system instead of putting it into the root of a PHP-enabled web server.

Although you can do this with regular HTML, it will not work with PHP.

Typically, this means that you will need to access it via //localhost.

In this article, I'll show you how to use PHP code in your HTML pages. It’s aimed at PHP beginners who are trying to strengthen their grip on the world's most popular server-side scripting language.

Again, PHP is a server-side scripting language. That means a PHP script is executed on the server, the output is built on the server, and the result is sent as HTML to the client browser for rendering. It's natural to mix PHP and HTML in a script, but as a beginner, it’s tricky to know how to combine the PHP code with the HTML code.

Learn PHP With a Free Online Course

If you want to learn PHP, check out our free online course on PHP fundamentals! In this course, you'll learn the fundamentals of PHP programming. You'll start with the basics, learning how PHP works and writing simple PHP loops and functions. Then you'll build up to coding classes for simple object-oriented programming [OOP]. Along the way, you'll learn all the most important skills for writing apps for the web: you'll get a chance to practice responding to GET and POST requests, parsing JSON, authenticating users, and using a MySQL database.

Today, we’re going to discuss a couple of different ways you could choose from when you want to use PHP in HTML. I assume that you have a working installation of PHP so that you can run the examples provided in this article.

Different Ways to Combine PHP and HTML

Broadly speaking, when it comes to using PHP in HTML, there are two different approaches. The first is to embed the PHP code in your HTML file itself with the .html extension—this requires a special consideration, which we’ll discuss in a moment. The other option, the preferred way, is to combine PHP and HTML tags in .php files.

Since PHP is a server-side scripting language, the code is interpreted and run on the server side. For example, if you add the following code in your index.html file, it won’t run out of the box.



Embed PHP in a .html File


First of all, don’t worry if you haven’t seen this kind of mixed PHP and HTML code before, as we’ll discuss it in detail throughout this article. The above example outputs the following in your browser:

So as you can see, by default, PHP tags in your .html document are not detected, and they're just considered plain text, outputting without parsing. That's because the server is usually configured to run PHP only for files with the .php extension.

If you want to run your HTML files as PHP, you can tell the server to run your .html files as PHP files, but it's a much better idea to put your mixed PHP and HTML code into a file with the .php extension.

That's what I'll show you in this tutorial.

How to Add PHP Tags in Your HTML Page

When it comes to integrating PHP code with HTML content, you need to enclose the PHP code with the PHP start tag . The code wrapped between these two tags is considered to be PHP code, and thus it'll be executed on the server side before the requested file is sent to the client browser.

Let’s have a look at a very simple example, which displays a message using PHP code. Create the index.php file with the following contents under your document root.



How to put PHP in HTML - Simple Example


The important thing in the above example is that the PHP code is wrapped by the PHP tags.

The output of the above example looks like this:

And, if you look at the page source, it should look like this:

As you can see, the PHP code is parsed and executed on the server side, and it's merged with HTML before the page is sent to the client browser.

Let’s have a look at another example:



How to put PHP in HTML- Date Example


This is pure HTML message.
Next, we’ll display today’s date and day by PHP!
Today’s date is and it’s a today!
Again, this is static HTML content.

This will output the current date and time, so you can use PHP code between the HTML tags to produce dynamic output from the server. It’s important to remember that whenever the page is executed on the server side, all the code between the  tags will be interpreted as PHP, and the output will be embedded with the HTML tags.

In fact, there’s another way you could write the above example, as shown in the following snippet.



How to put PHP in HTML- Date Example


This is pure HTML message.
Next, we’ll display today’s date and day by PHP!
Again, this is static HTML content.

In the above example, we’ve used the concatenation feature of PHP, which allows you to join different strings into one string. And finally, we’ve used the echo construct to display the concatenated string.

The output is the same irrespective of the method you use, as shown in the following screenshot.

And that brings us to another question: which is the best way? Should you use the concatenation feature or insert separate PHP tags between the HTML tags? I would say it really depends—there’s no strict rule that forces you to use one of these methods. Personally, I feel that the placeholder method is more readable compared to the concatenation method.

The overall structure of the PHP page combined with HTML and PHP code should look like this:



...


HTML...

HTML...

HTML...  


In the next section, we’ll see how you could use PHP loops with HTML.

How to Use PHP Loops in Your HTML Page

Iterating through the arrays to produce HTML content is one of the most common tasks you'll encounter while writing PHP scripts. In this section, we’ll see how you could iterate through an array of items and generate output.

In most cases, you’ll need to display array content which you’ve populated from the database or some other sources. In this example, for the sake of simplicity, we’ll initialize the array with different values at the beginning of the script itself.

Go ahead and create a PHP file with the following contents.



How to put PHP in HTML - foreach Example



List of Employees

Firstly, we’ve initialized the array at the beginning of our script. Next, we’ve used the foreach construct to iterate through the array values. And finally, we’ve used the echo construct to display the array element value.

And the output should look like this:

The same example with a while loop looks like this:



How to put PHP in HTML - foreach Example



List of Employees

And the output will be the same. So that’s how you can use foreach and while loops to generate HTML content based on PHP arrays.

In the next section, we’ll see how you could use PHP short tag syntax.

How to Use PHP Short Tags

In the examples we’ve discussed so far, we’ve used the 

As you can see, we can omit the echo or print construct while displaying a value by using the shorthand syntax. The shorthand syntax is short and readable when you want to display something with echo or print.

So these are different ways you can use to add PHP in HTML content. As a beginner, you can learn from trying different ways to do things, and it's fun too!

Including Code from Different Files

There are a lot of situations where you need to use the same code on multiple pages of a website. One such example would be the header and footer section of a website. These sections usually contain the same HTML throughout the website.

Think of this like moving the common CSS rules of a website into a stylesheet instead of placing them inside the style tags on individual pages.

There are four functions available in PHP to help you include other files within a PHP file. These are include[]include_once[]require[], and require_once[].

The include[] function will include and evaluate the specified file and give you a warning if it cannot find the file. The require[] function does the same thing, but it gives you an error instead of a warning if the file cannot be found.

When working on big projects, you might unintentionally include the same file multiple times. This could cause problems like function redefinition. One way to avoid these issues is to use the include_once[] and require_once[] functions in PHP.

Let's use code from a previous section to show you how to use these functions. I will be using include[] in this example. Create a file called header.php and place the following code inside it.



How to put PHP in HTML


This is pure HTML message.
Next, we’ll display today’s date and day using PHP!

Create another file called date.php and place the following code in it.

Create one more file called day.php and place the following code in it.

Notice that we have included the path to header.php at the top of both day.php and date.php. Make sure that the three files are in the same directory. Opening up date.php in the browser should now show you the following output.

Opening up day.php should show you the following output.

As you can see, the code we put inside header.php was included in both our files. This makes web development much easier when you are working with a lot of files. Just make the changes in one place, and they will be reflected everywhere.

Conclusion

Today, we discussed how you can mix PHP and HTML to create dynamic HTML. We discussed different methods, with a handful of examples to see how things work.

The Best PHP Scripts on CodeCanyon

Explore thousands of the best PHP scripts ever created on CodeCanyon. With a low-cost, one-time payment, you can purchase one of these high-quality PHP scripts and improve your website experience for you and your visitors. 

Here are a few of the best-selling and up-and-coming PHP scripts available from CodeCanyon for 2020.

Did you find this post useful?

Software Engineer, FSPL, India

I'm a software engineer by profession, and I've done my engineering in computer science. It's been around 14 years I've been working in the field of website development and open-source technologies. Primarily, I work on PHP and MySQL-based projects and frameworks. Among them, I've worked on web frameworks like CodeIgnitor, Symfony, and Laravel. Apart from that, I've also had the chance to work on different CMS systems like Joomla, Drupal, and WordPress, and e-commerce systems like Magento, OpenCart, WooCommerce, and Drupal Commerce. I also like to attend community tech conferences, and as a part of that, I attended the 2016 Joomla World Conference held in Bangalore [India] and 2018 DrupalCon which was held in Mumbai [India]. Apart from this, I like to travel, explore new places, and listen to music!

Can hackers see my PHP code?

Yes, of course they could - if the server is penetrated then any file on it is visible. Show activity on this post. Yes, it's entirely possible for someone to hack a server, via an exploit, or by stealing your password, or via buggy code you or others have written, or a number of different ways.

What happens to PHP code on the browser?

When PHP receives the file it reads through it and executes any PHP code it can find. After it is done with the file, the PHP interpreter gives the output of the code, if any, back to Apache. When Apache gets the output back from PHP, it sends that output back to a browser which renders it to the screen.

Why PHP code is printing instead of executing?

It might be PHP is not enabled in your apache configuration. You can uncomment PHP module by removing '#' sign at the beginning from httpd. conf file. Save file and then restart the web server.

Can you hide PHP code?

It is impossible to totally hide the PHP source code since it is an interpreted language, but there are a few possible alternatives: Use a code obfuscator to make the source code difficult to read. Use a code protector or encoder.

Chủ Đề