PHP can be used for a lot of different things, and is one of the most powerful scripting languages available on the web. Not to mention it’s extremely cheap and widely used. However, one thing that PHP is lacking, and in fact most scripting languages are, is a way to update pages in real-time, without having to reload a page or submit a form.
The internet wasn’t made for this. The web browser closes the connection with the web server as soon as it has received all the data. This means that after this no more data can be exchanged. What if you want to do an update though? If you’re building a PHP application (e.g. a high-quality content management system), then it’d be ideal if it worked almost like a native Windows/Linux application.
But that requires real-time updates. Something that isn’t possible, or so you would think. A good example of an application that works in (almost) real-time is Google’s GMail (http://gmail.google.com). Everything is JavaScript powered, and it’s very powerful and dynamic. In fact, this is one of the biggest selling-points of GMail. What if you could have this in your own PHP websites as well? Guess what, I’m going to show you in this article.
How does it work?
If you want to execute a PHP script, you need to reload a page, submit a form, or something similar. Basically, a new connection to the server needs to be opened, and this means that the browser goes to a new page, losing the previous page. For a long while now, web developers have been using tricks to get around this, like using a 1×1 iframe, where a new PHP page is loaded, but this is far from ideal.
Now, there is a new way of executing a PHP script without having to reload the page. The basis behind this new way is a JavaScript component called the XML HTTP Request Object. See http://jibbering.com/2002/4/httprequest.html for more information about the component. It is supported in all major browsers (Internet Explorer 5.5+, Safari, Mozilla/Firefox and Opera 7.6+).
PHP is a server-side scripting language for creating dynamic Web pages. You create pages with PHP and HTML. When a visitor opens the page, the server processes the PHP commands and then sends the results to the visitor’s browser, just as with ASP or ColdFusion. Unlike ASP or ColdFusion, however, PHP is Open Source and cross-platform. PHP runs on Windows NT and many Unix versions, and it can be built as an Apache module and as a binary that can run as a CGI. When built as an Apache module, PHP is especially lightweight and speedy. Without any process creation overhead, it can return results quickly, but it doesn’t require the tuning of mod_perl to keep your server’s memory image small.
In addition to manipulating the content of your pages, PHP can also send HTTP headers. You can set cookies, manage authentication, and redirect users. It offers excellent connectivity to many databases (and ODBC), and integration with various external libraries that let you do everything from generating PDF documents to parsing XML.
PHP goes right into your Web pages, so there’s no need for a special development environment or IDE. You start a block of PHP code with . (You can also configure PHP to use ASP-style <% %> tags or even .) The PHP engine processes everything between those tags.
PHP’s language syntax is similar to C’s and Perl’s. You don’t have to declare variables before you use them, and it’s easy to create arrays and hashes (associative arrays). PHP even has some rudimentary object-oriented features, providing a helpful way to organize and encapsulate your code.
Although PHP runs fastest embedded in Apache, there are instructions on the PHP Web site for seamless setup with Microsoft IIS and Netscape Enterprise Server. If you don’t already have a copy of PHP, you can download it at the official Web site. You’ll also find a manual that documents all of PHP’s functions and features.
When you started reading this sentence you assumed lo acabaría en inglés. However, I didn’t finish in English. This begs the question, ‘In which language did I finish?’ Unless I tell you the language, you’d have to run around and compare the words against known words in order to learn that it was Spanish, but I’d bet you’d give up and move on first. Servers work much the same way; if you don’t let it know the language it assumes you’re speaking to someone else (the browser) and sends it along. Servers aren’t even friendly enough to give it a whack and see how it comes out.
So, what’s server-speak for “Here comes PHP!”? Well, it definitely looks foreign:
And, to say “OK, back to browser-speak.”, try
?>
Sure. Whatever. It’s no use telling the server you’re speaking PHP because you only know how to say “I speak PHP”. What’s that going to do for you? Well, imagine you were visiting a scripts site and wondering how you could put today’s date on your webpage when you come across the following little snippet:
To display the date on your webpage, find the area you want to put the date then insert the code below.
echo date(‘m/d/Y’);
Now, you’re equipped with 2 statements: “I’m going to be speaking PHP” and “Today’s date is mm/dd/YYYY”. You then edit the file you want to put the date in by inserting this code in the desired location:
Put the file back on the server and you’re date shows up exactly as the snippet said it would. Or does it?
If you got lucky, it showed up. If not, there’s a little more to learn. There’s actually more than one way to tell the server that PHP is coming and I’ve only covered one way – the other ways aren’t necessary for you to know in order to use PHP on your site. Most servers require a bit more information first – they want the name of the file to say whether PHP is there or not. To tell the server that PHP is inside the file, you need to change the extension (the part after the dot) to php. Uh, sure, the extension. Does this guy speak English? YEP! lol. If that wasn’t clear, let’s illustrate by assuming your file was called index.html when you downloaded it to edit. Before you upload that file back to the server, you need to change “html” to “php”, so that the file is called index.php. Without that change most servers won’t even look for PHP. The nice thing is that even if a file ends in “php”, the server still looks for those opening pieces saying “Here comes PHP!” before trying to read what follows in PHP and just sends everything back to the browser which is outside of PHP, so you don’t hurt anything!


admin Under