Localhost PHP works but not within HTML - php

I'm running Mac OS X 10.10 and I'm having a problem running PHP on my Localhost here. It works fine when I load a PHP file directly in the browser (using HTTP localhost):
<?php echo '<p>Hello World</p>'; ?>
But it doesn't work when I embed the same PHP within HTML:
<html>
<head>
<title>PHP Test</title>
</head>
<body>
<?php echo '<p>Hello World</p>'; ?>
</body>
</html>
Any ideas? Do I maybe have something configured wrong? Is there something I should check in my apache/php setup files?
Thank you for any help!

In order for the file to be parsed by PHP, your file needs to have a .php extension.
In this case, instead of file.html it should be called file.php
The html will render without any parsing, while your php code will parse without a problem.

You need to continue to load your PHP over HTTP, from a server that has PHP installed and configured, using a file that the server will parse for PHP (which usually means having a .php file extension).

Related

PHP being commented out when uploaded to server (Ipage)

I am new to PHP and am trying to run my first script. I read that to to run php on your pc, you have run a server on it which I didn't feel like doing.
So instead I am trying to run it on a server hosted by Ipage.com
The program is just a basic html file with a set of full tags
I have tried linking windows explorer using ftp, using the "upload" button on the website and directly editing the file using the editer on the site. When ever I add the php tags and save or upload the file, when I go to view it on the ipage file manager, they are commented out
This is what happens to the file when I upload it
<!DOCTYPE html>
<html>
<title>Striations</title>
<head>
<link href="css/LandingPageStyle.css" type="text/css" rel="stylesheet">
</head>
<body>
<!--?php echo "HELLO"; ?--> //originally <?php echo "HELLO"; ?>
<h2>Our site is currently under construction, please check back later!</h2>
<img src="media/construction man.png"></img>
</body>
</html>
I'm totally new to php and hosting and stuff and I could be missing some important step regarding how to run php
I'd appreciate and explanation of how php is transferred into html before being sent to the browser
EDIT:: I know as a fact that ipage supports php, they had mentioned something about changing my root file directory, but even when I moved my files to where they said, it did the same thing
Is there something else I should be doing to enable php?
It is an html file with php tags... I'm supposed to save it as .html, right?
If you saved this as index.html then the PHP parser won't run it by default. Either name it index.php or (if you can) use htaccess to parse HTML files as PHP

PHP code doesn't show while using Dreamweaver

I create a new HTML file for my project using Dreamweaver and i added a simple php code:
<!DOCTYPE html>
<html>
<body>
<?php
echo "My first PHP script!";
?>
</body>
</html>
so far nothing is appearing while i open the file with google chrome and IE, any thoughts?
PHP has to be executed on the server. Upload it to a web server that supports PHP, or install your own web server locally such as WAMP. You then need to access the file with a URL rather than just opening it. A local URL will look like http://localhost/ or http://127.0.0.1/.
Your file also needs to have the extension .php if it contains PHP code. If you really want to use PHP inside a .html file, your web server will need to be set up specially to handle this.
PHP requires a webserver and an interpreter. Browsers cannot handle PHP on its own.
Look at XAMPP
A good idea to check if your php file is working properly is to load phpinfo function.
This function will show details about your PHP installation:
<?php
phpinfo();
?>
If what you see on the screen is this php code with the entire opening and closing tags (), then you are not running the page with PHP.

how to implement php in html file

so I'm basically brand new to web based stuff. My university has given me a cPanel hosted server. I need to implement some basic php functions for my main web page.
This is what my cpanel looks like if it helps:
So in my index.html file I have:
<!DOCTYPE html>
<html>
<head>
<title>Current Date/Time</title>
</head>
<body>
<h3>
<?php
date_default_timezone_set('UTC');
echo date("l");
echo "Hello World!";
?>
</h3>
</body>
</html>
But none of the php echo stuff is displaying. I'm not sure if my server actually knows what to do with an html file with php in it.
My instructors have told me: the php file needs to be deployed to public_html folder using the file manager in CPanel.
But i'm not really sure what needs to go into the .php file and how to get my .html file to utilize it.
Thanks for your patience.
Your file name needs to be .php. If the web server is set up with PHP (which I'm going to assume it is) then it will handle the php file fine.
Rename the index.html for now and by default the index.php will be the first page to load.
The file you are using is index.html. This means that it can only display static text and that's the reason why your PHP code is not working.
All you have to do is change the extension from .html to .php then your PHP code should work.
Although I would suggest you Google a few Intro. to HTML and PHP tutorials to get you going on the basics
The file's extension needs to be changed from *.html to *.php or the PHP won't execute, it'll just be treated like raw HTML.
Here's a quick very basic step-by-step of what's happening:
The client requests index.php
Your web server recognizes the *.php extension and tells PHP to interpret it
PHP parses the text looking for PHP code, and evaluates that code, then replaces the PHP code with the output of that PHP code (if any)
For example:
$strVar = 'world';
echo '<span class="contentText">hello ' . $strVar . '</span><br />';
is replaced with that code's output:
<span class="contentText">hello world</span><br />
The resulting HTML is then returned to the client as content to be rendered by the client's web browser
The client's web browser parses the HTML and renders a web page

"Hello, World" PHP page is not working

I am trying to start programming in PHP. I found this example "Hello, World" PHP page.
Here is the code:
<html>
<head>
<title>PHP Test</title>
</head>
<body>
<?php echo '<p>Hello World</p>'; ?>
</body>
</html>
However, instead of displaying:
Hello World
It displays:
Hello World
'; ?>
Viewing the source shows
<html>
<head>
<title>PHP Test</title>
</head>
<body>
<?php echo '<p>Hello World</p>'; ?>
</body>
</html>
instead of
<html>
<head>
<title>PHP Test</title>
</head>
<body>
<p>Hello World</p>
</body>
</html>
So it looks like it did not get parsed by Chrome. What is causing this problem?
Make sure the file is named .php and not .html or .htm. Also make sure you have uploaded it to a PHP web server.
Chrome (or any browser) does not parse PHP at all... the server parses the PHP and passes the HTML to the browser. Bottom line, the browser should never know PHP exists.
Looks like PHP isn't installed on your web server or you just opened the page directly off of your file system.
I had the same problem until somebody helped me out. Do this:
Access the file from your browser like so: http:// (localhost) /hello.php and it will come up fine provided your WAMP, XAMPP, etc. is running online and shows green. Remove spaces and parentheses around localhost). Also the file must be in the www directory of your Wamp, etc. folder in the root directory.
for this purpose you should put your code into php file make helloworld.php file and put in wamp www folder and run with wamp server.
for hello world program in php just follow this tutorial
but before that you should have wamp server or xamp server on your pc(wamp/xmap are open source software's and easily can found on google)
your 1st php program code:-
<?php
echo "hello world";
?>
output:-
hello world
Helping Step by Step Tutorial :https://www.youtube.com/watch?v=7qtqzhdEX-c
after this tutorial you can able to move other intermediate level programs of php.
Make sure you've used the same type of quotes - " and ' are completely different beasts.

New to PHP, can I just insert PHP in code?

Let's say I just want to use PHP include to grab HTML from another file. can I just put in that little PHP script and name my .html file (index.html) to index.php and it'll work? I thought I'd have to add my server password an other info in PHP to use it.. What do I do?
No you can't just insert PHP into HTML and expect it to work.
PHP is a server side language that generates the HTML that's sent to the client's web browser. The files usually have the extension ".php" rather than ".html" but simply renaming "html" as "php" won't work.
You need to have a PHP parser installed on your server and reconfigure your whole site.
You might be thinking of JavaScript which can be inserted into HTML and is run client side.
Exactly as you said:
<html>
<head>
<title>Test PHP file</title>
</head>
<body>
<?php
echo 'test';
//all your php code can go in here
?>
</body>
</html>
You can have multiple <?php ?> blocks in your file.
This will all work if your server is configured to parse HTML with the PHP interpreter.
I made an Apache handler including
application/x-httpd-php5 .html .htm
Then yes. You would be correct. I suggest doing this with an Apache .htaccess or a hosting panel.
If your server is configured to parse php files, then yes, adding <?php include('somefile.html'); ?> should work fine.
no you don't need server password to run php... just rename the file to .php and insert your php code inside <?php ?>
PHP and HTML
test.php
<?php
define('title','foo');
?>
<!doctype HTML>
<html>
<head>
<title><?=foo?></title>
</head>
<body>
...
</body>
</html>

Categories