CSE 134A teaches how to develop web-based applications that deliver information dynamically, either to human users or to other applications.
The course will cover architectures for server-side web-based systems that scale to thousands and even millions of users. The topics discussed will be related to Windows DNA, Microsoft .NET, and Sun ONE, but will not be vendor-specific. Standards for information exchange over the Internet including XML and SOAP will be covered.
The course will also cover algorithms for organizing and searching web-based information, such as those used by the Google search engine.
Topics that will be mentioned in 134A but not covered systematically include IP networking, relational database systems in general, web server design, HTML, user interface design, and text processing using regular expressions.
We chose PHP and MySQL because they are open-source and free.
You are encouraged to install your own copies of the software on your own
Linux machine.
PHP commands have access to information about the browser, the values of fields in a form on the browser, and can retrieve and/or update information in a database.
General applications: Responding to forms, displaying user-customized
content, rotating content. Examples: Slashdot, bug tracking, shopping
cart.
The first technology for dynamic web pages was Perl scripts connected to wb pages through something called CGI for "common gateway interface." CGI creates a new process for each request to the web server. You can save resources by using mod_perl to execute Perl scripts within Apache, but PHP does this more easily and transparently.
A PHP-based web page looks like HTML interleaved with programming commands. Other software technologies that are similar include Microsoft ASP, Cold Fusion, Java, Java Server Pages, and Java servlets.
One main advantages of PHP version 4 is Zend, a byte-code compiler that
is invoked automatically. This makes PHP pages run much faster, and
is similar to how Java is implemented.