测试使用数据库连接的 PHP 脚本
- 创建一个包含以下内容的文件。
为文件命名,例如 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>
将 ORACLE_HOME 和 TNS_ADMIN 设置为正确的值。
将文件复制到 DocumentRoot 目录。
根据测试系统的需要修改变量 $username, $password, $database_hostname, $database_port, $database_sid 和 $database_srvc
将权限更改为 755(仅限 Linux):
chmod 755 phpdbchk.php
- 从浏览器调用文件:
http://Fully-Qualified-Hostname:PORT#/phpdbchk.php
如果 ORACLE_HOME\network\admin\tnsnames.ora 设置不正确或者丢失,则会出现以下错误。
如果丢失,可以将数据库中的那个复制过来并按原样使用。
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
PHP 是一种广泛使用的通用脚本语言,特别适用于 Web 开发并且可以嵌入到 HTML 中。
PHP 可以在所有主要操作系统上运行,从 Unix 变体,包括 Linux、FreeBSD、Ubuntu、Debian 和 Solaris,到 Windows 和 Mac OS X。
它可以与所有领先的 Web 服务器一起使用,包括 Apache、Nginx、OpenBSD 服务器等等;甚至 Azure 和 Amazon 等云环境也在兴起。
下面是一些可以测试 PHP 脚本的方法。
测试简单的 PHP 脚本
- 创建一个包含以下内容的文件。
为文件命名,例如 myphpInfo.php:
<?php phpinfo(); ?>
将文件复制到网络服务器 DocumentRoot 目录,例如 /var/www/html。
我们可能有不同的 DocumentRoot 目录,具体取决于我们使用的网络服务器和为其完成的配置。将权限更改为 755(仅限 Linux):
# chmod 755 myphpInfo.php
- 从浏览器调用文件:
http://Fully-Qualified-Hostname:PORT#/phpinfo.php
将 PHP 脚本运行到 htdocs 之外的另一个目录
例如,如果我们想将 php 脚本放置到 $ORACLE_HOME/Apache/Apache/phpsrc 并通过浏览器从那里运行它们,例如 http:FQHN:[port]/php/info.php,请执行以下操作:
1.制作目录$ORACLE_HOME/Apache/Apache/phpsrc
将 info.php 脚本复制到 $ORACLE_HOME/Apache/Apache/phpsrc
编辑 httpd.conf 并添加以下行:
Alias /php/ $ORACLE_HOME/Apache/Apache/phpsrc
- 重新启动 http 服务器,现在它应该可以工作了:
http:FQHN:[port]/php/info.php
注意:以 php 脚本 info.php 为例,我们可以为 php 脚本使用任何我们选择的名称
