PHP je široce používaný univerzální skriptovací jazyk, který je zvláště vhodný pro vývoj webu a lze jej vložit do HTML. PHP běží na všech hlavních operačních systémech, od unixových variant včetně Linuxu, FreeBSD, Ubuntu, Debian a Solaris až po Windows a Mac OS X. Lze jej použít se všemi předními webovými servery, včetně serverů Apache, Nginx, OpenBSD, abychom jmenovali alespoň některé.; dokonce i cloudová prostředí jako Azure a Amazon jsou na vzestupu.
Níže jsou uvedeny některé ze způsobů, jak lze skript PHP testovat.
Testování jednoduchého skriptu PHP
1. Vytvořte soubor s následujícím obsahem. Dejte souboru název, například myphpInfo.php:
<?php phpinfo(); ?>
2. Zkopírujte soubor do adresáře DocumentRoot vašich webových serverů, například – /var/www/html. Můžete mít jiný adresář DocumentRoot v závislosti na tom, který webový server používáte, a na konfiguraci, kterou jste pro něj provedli.
3. Změňte oprávnění na 755 (pouze Linux):
# chmod 755 myphpInfo.php
4. Vyvolejte soubor z prohlížeče:
http://Fully-Qualified-Hostname:PORT#/phpinfo.php
Testování skriptu PHP, který používá databázová připojení
1. Vytvořte soubor s následujícím obsahem. Dejte souboru název, například phpdbchk.php:
<html> <head> <title>PHP Database Connection Test</title> </head> <body> <?php $username = 'scott'; $password = 'password'; $database_hostname = 'host.domain'; $database_port = 'port'; $database_sid = 'sid'; $database_srvc = 'servicename'; $easy_connect_syntax = '//'.$database_hostname.':'.$database_port.'/'.$database_srvc; // If Oracle 10g libraries are used by PHP try the new Easy Connect syntax. // No long connection string is needed. No tnsnames.ora file is required. // This does not work with standalone HTTP Server installations // $conn = OCILogon($username, $password, $easy_connect_syntax); // Use this line if TNS is setup properly in $ORACLE_HOME/network/admin $conn = OCILogon($username, $password, $database_sid); if (!$conn) { $e = ocierror(); print htmlentities($e['message']); exit; } $query = 'SELECT SYSDATE FROM DUAL'; $stmt = ociparse($conn, $query); ociexecute($stmt, OCI_DEFAULT); print 'Checking for the Date and Database Connectivity<br>'; $success = 0; while (ocifetch($stmt)) { print "Date: " . ociresult($stmt, "SYSDATE") . "<br>\n"; $success = 1; } if ($success) { print 'Success.<p>'; } else { print 'Failed to retrieve the date.<p>\n'; } OCILogoff($conn); print 'PHP Configuration<br>'; print '======================<p>'; phpinfo(); ?> </body> </html>
2. Nastavte ORACLE_HOME a TNS_ADMIN na správné hodnoty.
3. Zkopírujte soubor do adresáře DocumentRoot.
4. Upravte proměnné $username, $password, $database_hostname, $database_port, $database_sid a $database_srvc podle potřeby pro testovací systém
5. Změňte oprávnění na 755 (pouze Linux):
chmod 755 phpdbchk.php
6. Vyvolejte soubor z prohlížeče:
http://Fully-Qualified-Hostname:PORT#/phpdbchk.php
Pokud ORACLE_HOME\network\admin\tnsnames.ora není správně nastaven nebo chybí, dojde k následující chybě. Pokud chybí, lze ten z databáze zkopírovat a použít tak, jak je.
Warning: ocilogon(): _oci_open_server: ORA-12560: TNS:protocol adapter error in [oracle_home]\apache\apache\htdocs\phpdbchk.php on line 25 ORA-12560: TNS:protocol adapter error
Spuštění PHP skriptu do jiného adresáře mimo htdocs
Pokud například chcete umístit php skripty do $ORACLE_HOME/Apache/Apache/phpsrc a spouštět je odtud přes prohlížeč, např. http:FQHN:[port]/php/info.php, proveďte následující:
1. vytvořte adresář $ORACLE_HOME/Apache/Apache/phpsrc
2. Zkopírujte skript info.php do $ORACLE_HOME/Apache/Apache/phpsrc
3. Upravte soubor httpd.conf a přidejte tento řádek:
Alias /php/ $ORACLE_HOME/Apache/Apache/phpsrc
4. Restartujte http server a nyní by měl fungovat:
http:FQHN:[port]/php/info.phpPoznámka :Jako příklad byl použit php skript info.php, pro své php skripty můžete použít libovolný název