Comment se connecter à une base de données Oracle à partir de PHP?
Un lien Forth dans Google après avoir recherché vos questions exactes a mis en place le lien suivant: http://me2learn.wordpress.com/2008/10/18/connect-php-with-Oracle-database/
<?php
$db = "(DESCRIPTION=(ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(Host = 192.168.1.34)(PORT = 1521)))(CONNECT_DATA=(SID=orcl)))" ;
if($c = OCILogon("system", "your database password", $db))
{
echo "Successfully connected to Oracle.\n";
OCILogoff($c);
}
else
{
$err = OCIError();
echo "Connection failed." . $err[text];
}
?>
J'ai supposé que vous vouliez connecter php avec les bases de données Oracle. donc, je vous en donne deux, cela représente un php-Oracle de base pour votre référence. bonne chance!
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 fournit Fonctions Oracle OCI8 . PDO avec le pilote Oracle Driver et (si Oracle le prend en charge) ODBC .
J'ai créé une connexion de la manière la plus simple comme suit:
Étape 1. Déterminez quelle version de PHP bits (32 bits ou 64 bits) vous utilisez. Si PHP_INT_SIZE a la valeur 4, la version est 32 bits. Si PHP_INT_SIZE a la valeur 8, la version est 64 bits. Utilisez le code suivant ci-dessous:
<?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;
}
?>
Étape 2. Téléchargez le "Package InstantClient - Basic" pour Windows à partir de la [page OTN InstantClient] [1]. Assurez-vous de télécharger la version de bit correspondante à l'étape 1.
Étape 3. Décompressez les fichiers InstantClient en
C:\instantclient_11_2
et éditez l'environnement Windows PATH pour inclureC:\instantclient_11_2
. Par exemple, sous Windows XP, suivez la commande `Démarrer> Panneau de configuration> Système>.
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
Votre question ne vous permet pas de savoir si vous souhaitez configurer votre installation PHP pour se connecter à Oracle ou si vous souhaitez simplement que la syntaxe php établisse la connexion?
Comme il existe déjà une réponse spécifique à Windows et le système de connexion ici, ces liens doivent vous orienter dans la bonne direction pour une installation sous Linux des bibliothèques client Oracle.
Les étapes de base sont ..
Ces étapes figurent dans plusieurs articles de blog, je ne réinvente donc pas la roue ici. mais voici quelques liens qui ont l'air bien