msf004 Posted June 1, 2007 Share Posted June 1, 2007 Hello, I am a developer of 20+ years with C, Shell Scripts, CGI, Java, JSP, ASP, etc. just not PHP. I recently had a need to start using PHP and I quickly ran into a problem to which I have not found an answer through searches. It seems like a strange problem, or maybe just my misunderstanding of the language. Either way, I am interested in finding an answer. Here is the problem. I have three files as shown below: FileA.php ----------- <html> <head></head> <body> <?php echo "hello world"; ?> </body> </html> FileB.php ----------- <html> <head></head> <body> <?= "hello world" ?> FileC.php ----------- <?php echo "hello world"; ?> I put these files into the same directory under Apache (htttpd). Then from an Internet browser I browse to the files, File C shows the expected output of "Hello World" whereas File A & B show a blank page. Further, if I view the source of File A or B from the Internet browser, the source shows the PHP code; exactly as shown above. I.e.: the SOURCE for File A when viewed from a web browser is: <html> <head></head> <body> <?php echo "hello world"; ?> </body> </html> Basically, using the formats above, Files A & B, seemingly are not being processed by the PHP Interpreter at all; however, the text is also not going to the browser - it just shows up in the source of the HTML. So, my question is, Why? I am running PHP 4.3.2-40 on Red Hat ES3 with Apache HTTPD 2.0.46. I have browser tested with Mac OS X Safari, MAC OS X Camino, Windows FireFox, Windows IE. Any thoughts, suggestions, or assistance would be greatly appreciated. Thanks, -Marc Quote Link to comment https://forums.phpfreaks.com/topic/53823-php-101/ Share on other sites More sharing options...
btherl Posted June 1, 2007 Share Posted June 1, 2007 What do you see when you view the source of page C? Quote Link to comment https://forums.phpfreaks.com/topic/53823-php-101/#findComment-266058 Share on other sites More sharing options...
AndyB Posted June 1, 2007 Share Posted June 1, 2007 <?="hello world"?> ... will fail unless short tags are enable in php. Avoid this construction. As to why you get the results you see, php is a server-interpreted scripting language, i.e. it only works when parsed on a server then rendered by a browser (if that's what you're trying to do). Navigating locally to a file - as it appears you are trying - will fail. You need to navigate to http://localhost ..... your file to ensure it is delivered by the server. Quote Link to comment https://forums.phpfreaks.com/topic/53823-php-101/#findComment-266061 Share on other sites More sharing options...
msf004 Posted June 1, 2007 Author Share Posted June 1, 2007 What do you see when you view the source of page C? As I would expect, the source code is simply: hello world -Marc Quote Link to comment https://forums.phpfreaks.com/topic/53823-php-101/#findComment-266067 Share on other sites More sharing options...
AndyB Posted June 1, 2007 Share Posted June 1, 2007 If C works as expected and A shows nothing (except the script source when you view source), I'd expect that A is not absolutely the same as you posted here. Perhaps it's < ?php and not <?php ?? Quote Link to comment https://forums.phpfreaks.com/topic/53823-php-101/#findComment-266071 Share on other sites More sharing options...
msf004 Posted June 1, 2007 Author Share Posted June 1, 2007 <?="hello world"?> ... will fail unless short tags are enable in php. Avoid this construction. As to why you get the results you see, php is a server-interpreted scripting language, i.e. it only works when parsed on a server then rendered by a browser (if that's what you're trying to do). Navigating locally to a file - as it appears you are trying - will fail. You need to navigate to http://localhost ..... your file to ensure it is delivered by the server. I did not literally browse to the files on my local file system. I placed the files into a configured Apache httpd directory and utilized a web browser via: http://<servername>/<directory>/<filename> to have the PHP interpreter parse the files and send a response. Thanks, -Marc Quote Link to comment https://forums.phpfreaks.com/topic/53823-php-101/#findComment-266072 Share on other sites More sharing options...
msf004 Posted June 1, 2007 Author Share Posted June 1, 2007 If C works as expected and A shows nothing (except the script source when you view source), I'd expect that A is not absolutely the same as you posted here. Perhaps it's < ?php and not <?php ?? No, I have literally copied and pasted the files. That is why I am so confused. I even went back just now to *ensure* there is no spacing, I.e.: <?php and not < ?php or <? php The file is exactly as shown - this is why I am not understanding the issue. I assume php works just like ASP and JSP - and I have used both of those languages for 10+ years. I was thinking maybe it is a configuration thing somewhere. Ultimately, I have tried about 10 tests and consistently, for all of my tests, if <?php is not the FIRST line of the file then the PHP Interpreter is not parsing the file. Thanks for your responses. -Marc Quote Link to comment https://forums.phpfreaks.com/topic/53823-php-101/#findComment-266074 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.