This is a list of Frequently Asked Questions about PHP3 and their answers. If you have suggestions or additions, send them to php3@lists.php.net.
PHP Version 3.0 is an HTML-embedded scripting language. Much of its syntax is borrowed from C, Java and Perl with a couple of unique PHP-specific features thrown in. The goal of the language is to allow web developers to write dynamically generated pages quickly.
On Unix machines, you can use the Sybase-CT driver to access Microsoft SQL Servers because they are (at least mostly) protocol-compatible. Sybase has made a free version of the necessary libraries for Linux systems. For other Unix operating systems, you need to contact Sybase for the correct libraries. Also see the answer to the next question - 1.6.
If you are running PHP on a Unix box and want to talk to MS-Access on a Windows box you will need Unix ODBC drivers. OpenLink Software has Unix-based ODBC drivers that can do this. There is a free pilot program where you can download an evaluation copy that doesn't expire and prices start at $675 for the commercial supported version.
Another alternative is to use an SQL server that has Windows ODBC drivers and use that to store the data, which you can then access from Microsoft Access (using ODBC) and PHP3 (using the built-in drivers), or to use an intermediary file format that Access and PHP3 both understand, such as flat-files or dBase databases. On this point Tim Hayes from OpenLink software writes:
Using another database as an intermediary is not a good idea, when you can use ODBC from PHP3 straight to your database - i.e. with OpenLink's drivers. If you do need to use an intermediary file format, OpenLink have now released Virtuoso (a virtual database engine) for NT, Linux and other unix platforms. Please visit our website for a free download.
One option that has proven successful is to use MySQL and its MyODBC drivers on Windows and synchronizing the databases. Steve Lawrence writes:
Tips and Tricks: - You can construct your tables in access and export them to MySQL, then link them back in. That makes table creation quick.
- Install MySQL on your platform according to instructions with MySQL. Latest available from www.mysql.org (get it from your mirror!). No special configuration required except when you set up a database, and configure the user account, you should put % in the host field, or the host name of the windows computer you wish to access MySQL with. Make a note of your server name, username, and password.
- Download the MyODBC for windows driver from the MySQL site. Latest release is myodbc-2_50_19-win95.zip (NT available too, as well as source code). Install it on your windows machine. You can test the operation with the utilities included with this program.
- Create a user or system dsn in your ODBC administrator, located in the control panel. Make up a dsn name, enter your hostname, user name, password, port, etc for you MySQL database configured in step 1.
- Install Access with a full install, this makes sure you get the proper add-ins.. at the least you will need ODBC support and the linked table manager.
- Now the fun part! Create a new access database. In the table window right click and select Link Tables, or under the file menu option, select Get External Data and then Link Tables. When the file browser box comes up, select files of type: ODBC. Select System dsn and the name of your dsn created in step 3. Select the table to link, press ok, and presto! you can now open the table and add/delete/edit data on your MySQL server! You can also build queries, import/export tables to MySQL, build forms and reports, etc.
- When creating tables in access, you must have a primary key defined in order to have write access to the table in access. Make sure you create a primary key in MySQL before linking in access.
- If you change a table in MySQL, you have to re-link it in access. Go to tools>add-ins>linked table manager, cruise to your ODBC DSN, and select the table to re-link from there. you can also move your dsn source around there, just hit the always prompt for new location checkbox before pressing ok.
php3-subscribe@lists.php.net
. You don't need to include
anything special in the subject or body of the message.
To unsubscribe, send mail to php3-unsubscribe@lists.php.net
.
joeblow@example.com
,
you can send your subscription request to
php3-subscribe-joeblow=example.com@lists.php.net
,
or your unsubscription request to
php3-unsubscribe-joeblow=example.com@lists.php.net
.
Those fancy pop-out layers are done with Dynamic HTML (DHTML), Cascading Style Sheets (CSS) and Javascript (version 1.2).
There are plenty of references on the web about DHTML and CSS, including:
- CSS Level 1 Spec: www.w3.org/TR/REC-CSS1
- Macromedia's DHTML Zone: www.dhtmlzone.com/index.html
- Webreference's DHTML Lab: www.webreference.com/dhtml/
- Guide to Cascading Style Sheets: www.htmlhelp.com/reference/css/
- Dynamic Duo - Cross-Browser DHTML: www.dansteinman.com/dynduo/
- Netscape's Guide to JS 1.2: developer.netscape.com/docs/manuals/communicator/jsguide/js1_2.htm
But your best source of information is to view the source code to the pages on the PHP site. To see the actual DHTML/Javascript code, use your browser's "View Source" function. To see how this code was generated dynamically using PHP3, click on the "Source" button in the upper-right corner of any PHP page. You will probably also want to view the source of the "shared.inc" file - there is a link to it at the bottom of every source page.
You already have all the tools you need if you are running entirely under Windows 95/98 or NT, where you can use ODBC and the Empress ODBC driver for Windows.
If you are running PHP on a Unix box and want to access Empress databases, you
can link
the Empress ODBC client driver directly into the PHP unified ODBC API.
Note that does NOT make PHP an ODBC client. The unified ODBC interface
simplies uses the ODBC application program interface (API).
Because Empress uses the PHP unified ODBC interface it has very little explicit Empress specific syntax. It is of course possible to use Empress specific SQL in the SQL statements themselves, but this does not affect the interface. It is a good general policy to stick to ANSI standard SQL whenever possible.
odbc_connect ()
and odbc_pconnect ()
functions.
The connect syntax is:
odbc_connect (dsn, user_id, password)
odbc_pconnect (dsn, user_id, password)
Note that there are other options for this string. But the three shown above are the most important for use with PHP.