Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从PHP连接Oracle数据库_Php_Oracle - Fatal编程技术网

如何从PHP连接Oracle数据库

如何从PHP连接Oracle数据库,php,oracle,Php,Oracle,如何从PHP连接到Oracle数据库?PHP提供了。其他选项包括PDO和(如果oracle支持的话) google中的第四个链接在搜索您的确切问题后,出现以下链接: 我假设您希望将php与oracle数据库连接起来。所以,我给你们两个文件,这是一个代表基本php的oracle供你们参考。祝你好运 form.php <form name="form1" method="post" action="login.php"> <label> User Name <i

如何从PHP连接到Oracle数据库?

PHP提供了。其他选项包括PDO和(如果oracle支持的话)

google中的第四个链接在搜索您的确切问题后,出现以下链接:


我假设您希望将php与oracle数据库连接起来。所以,我给你们两个文件,这是一个代表基本php的oracle供你们参考。祝你好运

form.php

<form name="form1" method="post" action="login.php">
  <label> User Name
  <input type="text" name="nis" id="nis">
  </label>
  <label> Password
  <input type="password" name="password" id="password">
  </label>
  <label>
  <input type="submit" name="submit" id="button" value="Login">
  </label>
</form>

用户名
密码
login.php

<?php

//create table users (userid varchar2(10), password varchar2(20), constraint pk_users primary key (userid));
//insert into users values('kharis', 'pass123');

$nis = isset($_POST['nis']) == true ? $_POST['nis'] : '';
$password= isset($_POST['password']) == true ? $_POST['password'] : '';

if(empty($nis) or empty($password)){
    echo "UserID atau Password kosong";}
else
{
    $db = "(DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = patronus.ad-ins.com)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = XE)
        )
      )" ;
    $connect = oci_connect("HR", "hr", "XE");
    $query = "SELECT * from users WHERE userid='".$nis."' and password='".$password."'";
    $result = oci_parse($connect, $query);
    oci_execute($result);
    $tmpcount = oci_fetch($result);
    if ($tmpcount==1) {
        echo "Login Success";}
    else
    {
        echo "Login Failed";
    }
}
?>

您的问题不清楚您是想将PHP安装配置为连接到oracle,还是只想使用PHP语法进行连接

由于这里已经有一个特定于Windows的答案和连接systax,这些链接应该为您指明基于linux安装Oracle客户端库的正确方向

基本步骤是

  • 解压缩Oracle客户端库(Basic、SDK和sqlplus软件包)
  • 将LD_库_路径添加到您的环境中
  • 修复库的一些符号链接
  • 安装PECL OCI8,这将编译共享对象,因此您的系统将需要一个C编译器
  • 在php.ini文件中启用扩展名。记住,您的系统可能有单独的用于CLI和webserver的php.ini文件,所以请检查这两个文件
  • 重新启动Web服务器
这些步骤都在多篇博客文章中,所以我不会在这里重复。但这里有一些看起来不错的链接

我以最简单的方式创建了一个连接,如下所示:

第一步。确定正在运行的PHP位版本(32位或64位)。 如果PHP_INT_SIZE的值为4,则版本为32位。如果PHP_INT_SIZE的值为8,则版本为64位。使用以下代码:


你在找什么,连接字符串?请看一看PDO或OCI,看一件重要的事情:如果要连接到远程Oracle服务器,则需要安装Oracle Instant Client。更多信息和指向OIC的链接:这篇博客文章似乎是特定于windows的。效果非常好。非常感谢。
<?php

//create table users (userid varchar2(10), password varchar2(20), constraint pk_users primary key (userid));
//insert into users values('kharis', 'pass123');

$nis = isset($_POST['nis']) == true ? $_POST['nis'] : '';
$password= isset($_POST['password']) == true ? $_POST['password'] : '';

if(empty($nis) or empty($password)){
    echo "UserID atau Password kosong";}
else
{
    $db = "(DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = patronus.ad-ins.com)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = XE)
        )
      )" ;
    $connect = oci_connect("HR", "hr", "XE");
    $query = "SELECT * from users WHERE userid='".$nis."' and password='".$password."'";
    $result = oci_parse($connect, $query);
    oci_execute($result);
    $tmpcount = oci_fetch($result);
    if ($tmpcount==1) {
        echo "Login Success";}
    else
    {
        echo "Login Failed";
    }
}
?>
<?php
    switch(PHP_INT_SIZE) {
        case 4:
            echo '32-bit version of PHP';
            break;
        case 8:
            echo '64-bit version of PHP';
            break;
        default:
            echo 'PHP_INT_SIZE is ' . PHP_INT_SIZE;
    } 
?>
Advanced > Environment Variables` and edit `PATH` in the `System`
> variables list.
Step 3. In your `php.ini` file, enable the following lines:
extension=php_oci8_11g.dll
extension=php_openssl.dll

Finally, restart your Apache server.

http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html