Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & Oracle
PHP & Oracle Forum d'entraide sur Oracle avec PHP. Avant de poster -> FAQ Oracle et Cours Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/12/2006, 15h44   #1
Candidat au titre de Membre du Club
 
Inscription : décembre 2006
Messages : 76
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : décembre 2006
Messages : 76
Points : 12
Points : 12
Par défaut connexion Oracle via un formulaire

Bonjour,

j'ai eu beau lire les différents post traitant du sujet je n'arrive pas à m'y retrouver

En gros j'ai une base de données oracle que je souhaiterai attaquer avec un formulaire en php

j'ai deja installé easyphp et activé dans le php.ini d'apache les 2 lignes nécessaires (extension=php_oracle.dll,extension=php_oci8.dll)
Mais concernant le début du code en php du formulaire je ne vois pas du tout par où commencer

voilà si quelqu'un pouvait me guider un peu ca serait pas mal

ps: comment est ce que l'on connait le nom de notre pas de données oracle?
CYCLOPE91440 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2006, 19h04   #2
Membre Expert
 
Inscription : avril 2006
Messages : 1 338
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : avril 2006
Messages : 1 338
Points : 1 315
Points : 1 315
Bon relis ce tuto

http://php.developpez.com/cours/phporacle/

et ensuite si tu as des problemes explique les clairement erreur de code etc..pasque si tu n'as encore rien coder c'est dur de t'aider
__________________
Stay in Bed .. Save Energy
boo64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2006, 19h20   #3
Candidat au titre de Membre du Club
 
Inscription : décembre 2006
Messages : 76
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : décembre 2006
Messages : 76
Points : 12
Points : 12
Merci pour votre réponse

je ne saisi pas tout dans ce tuto:je vais vous expliquer clairement ce que je souhaite faire.

Je dispose d'un pc sur lequel j'ai oracle express edition et je veux attaquer cette base de donnée avec ce meme pc dans un premier temps car après la base de donnée sera sur un serveur et il faudra pouvoir la joindre via des pc de mon réseau
Bref je ne souhaite pas installer oracle client sur chaque client mais créer un frontal en php/html sous forme d'un formulaire

J'ai donc décidé d'installer easyphp 1.8 qui inclu apache

au niveau de la configuration de apache je ne comprends pas grand chose malgres les divers tutos.
Pour php j'ai rajouté les 2 lignes précendente
Mais quand je fais un http://127.0.0.1/phpinfo.php (via <? phpinfo(); ?> )rien ne se passe donc j'imagine qu'il y a un probleme de ce coté là

avant de commencer tout formulaire je souhaiterai valider la configuration des différentes applications

Pouvez vous m'indiquer la démarche à suivre pour être certain que je parte sur de bonne base

merci
CYCLOPE91440 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2006, 19h28   #4
Membre Expert
 
Inscription : avril 2006
Messages : 1 338
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : avril 2006
Messages : 1 338
Points : 1 315
Points : 1 315
juste une precision quand tu tapes seulement 127.0.0.1/
as tu la page d'accueil de easyphp
__________________
Stay in Bed .. Save Energy
boo64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2006, 19h45   #5
Candidat au titre de Membre du Club
 
Inscription : décembre 2006
Messages : 76
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : décembre 2006
Messages : 76
Points : 12
Points : 12
oui tout à fait en faisant weblocal via l'icone easyphp
CYCLOPE91440 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2006, 20h25   #6
Membre Expert
 
Inscription : avril 2006
Messages : 1 338
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : avril 2006
Messages : 1 338
Points : 1 315
Points : 1 315
donc ton serveur web fonctionne
as tu bien mis le fichier phpinfo.php dans le fichier www qui est la racine de ton serveur web
__________________
Stay in Bed .. Save Energy
boo64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2006, 20h40   #7
Candidat au titre de Membre du Club
 
Inscription : décembre 2006
Messages : 76
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : décembre 2006
Messages : 76
Points : 12
Points : 12
c'est bon ca fonctionne
en fait j'avais <? phpinfo(); ?> au lieu de
<? phpinfo();
?>
ca m'apprendra à faire des copier coller

maintenant comment je fais pour voir si la configuration d'apache est correcte?
CYCLOPE91440 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2006, 21h27   #8
Membre Expert
 
Inscription : avril 2006
Messages : 1 338
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : avril 2006
Messages : 1 338
Points : 1 315
Points : 1 315
dans phpinfo tu a tout le smodules qu'a php
regarde si il ya cleui pour le sfonction oracle
__________________
Stay in Bed .. Save Energy
boo64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2006, 21h46   #9
Candidat au titre de Membre du Club
 
Inscription : décembre 2006
Messages : 76
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : décembre 2006
Messages : 76
Points : 12
Points : 12
voilà ce que j'ai pu trouver à travers les forums:

pour se connecter à ma base il faut ça

Code :
1
2
3
4
<?php
// connexion.php se connecte à la base.
$ora_conn = ora_logon("nomdelabase@service","pass");
?>
ça je dois le mettre dans index.htlm?
le nom de la base par defaut est "xe" par contre pour service je vois pas et pour le pass je pense que c'est celui du compte system

pour l'instant je suis dans le brouillard

merci pour vos réponses
CYCLOPE91440 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2006, 21h52   #10
Candidat au titre de Membre du Club
 
Inscription : décembre 2006
Messages : 76
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : décembre 2006
Messages : 76
Points : 12
Points : 12
pour répondre à votre question j'ai ça:

dans php variable ($_SERVER["PATH"])
Citation:
C:\oraclexe\app\oracle\product\10.2.0\server\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\PROGRA~1\EASYPH~1\Apache;C:\PROGRA~1\EASYPH~1\PHP
dans environnement (Path)
Citation:
C:\oraclexe\app\oracle\product\10.2.0\server\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\PROGRA~1\EASYPH~1\Apache;C:\PROGRA~1\EASYPH~1\PHP
dans apache environnement (PATH)
Citation:
C:\oraclexe\app\oracle\product\10.2.0\server\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\PROGRA~1\EASYPH~1\Apache;C:\PROGRA~1\EASYPH~1\PHP
Voila j'espere que c'est bon
CYCLOPE91440 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/12/2006, 12h27   #11
Membre Expert
 
Inscription : avril 2006
Messages : 1 338
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : avril 2006
Messages : 1 338
Points : 1 315
Points : 1 315
Citation:
Le service (ou TNS) est un nom du service utilisé par les applications "client" d'Oracle installées sur la même machine. Il est donc nécessaire de connaître ces infos (demandez ça à votre DBA Oracle).
enfait tout est dans le tutorial que je t'ai montré
__________________
Stay in Bed .. Save Energy
boo64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/12/2006, 13h26   #12
Membre du Club
 
Inscription : juin 2005
Messages : 141
Détails du profil
Informations forums :
Inscription : juin 2005
Messages : 141
Points : 51
Points : 51
slt à tous !
escusez moi mais j'ai le meme pb et
je voudrais savoir la valeur possible de chacune des variables avec ORA_LOGON
Code :
1
2
3
4
<?php
// connexion.php se connecte à la base.
$ora_conn = ora_logon("NomDeLaBase@service","pass");
?>
et dans la doc de ORA_LOGON j'ai ceci :
Code :
1
2
3
<?php
$conn = ora_logon("user@TNSNAME", "pass");
?>
quelqu'un peut m'aider en m'expliquant les differents termes ?
merci à tous !
LeNeutrino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/12/2006, 14h56   #13
Candidat au titre de Membre du Club
 
Inscription : décembre 2006
Messages : 76
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : décembre 2006
Messages : 76
Points : 12
Points : 12
Citation:
Envoyé par boo64
enfait tout est dans le tutorial que je t'ai montré
ben le DBA c'est moi mais je ne vois pas où trouver ces informations et honnetement je sais pas si c'est moi mais pour moi le tuto c'est du charabia
Il y a certaine chose que je comprends et d'autres que je n'arrive pas à saisir
c'est pour ca que je me permets de vous poser ces questions
CYCLOPE91440 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/12/2006, 15h06   #14
Candidat au titre de Membre du Club
 
Inscription : décembre 2006
Messages : 76
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : décembre 2006
Messages : 76
Points : 12
Points : 12
"Oracle fonctionne en client/serveur, c'est-à-dire qu'un serveur contient les données et que tous les ordinateurs de l'entreprise possèdent la version "client" : les utilitaires tels que SQL*Plus (pour faire des requêtes).
Le serveur web Apache est installé sur une machine possèdant le client."

Moi je veux que mon serveur heberge la BDD ainsi que le serveur web pour que je puisse acceder à ma BDD de facon distante. Je ne vois pas ce que SQL*plus fait là! Il est obligatoire?
CYCLOPE91440 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/12/2006, 20h58   #15
Candidat au titre de Membre du Club
 
Inscription : décembre 2006
Messages : 76
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : décembre 2006
Messages : 76
Points : 12
Points : 12
est ce que quelqu'un pourrait m'indiquer un script rapide pour simplement me connecter à ma base?
Par la suite je ferais un forms avec un select pour verifier qu'il va bien chercher les info du champs dans la base pour mon menu déroulant.
Parce que là j'ai regardé les fichiers listener.ora et tnsnames.ora situé ici (C:\oraclexe\app\oracle\product\10.2.0\server\NETWORK\ADMIN) et tout à l'air d'être correcte

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = C:\oraclexe\app\oracle\product\10.2.0\server)
(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = C:\oraclexe\app\oracle\product\10.2.0\server)
(PROGRAM = extproc)
)
)

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
(ADDRESS = (PROTOCOL = TCP)(HOST = poinssot)(PORT = 1521))
)
)

DEFAULT_SERVICE_LISTENER = (XE)

et

XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = poinssot)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)

EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)

ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
)
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
)
)

De plus ne ne trouve pas ce fichier:

"Sous windows c'est plus simple, il suffit d'enlever le point-virgule de l'une de ces deux lignes du fichier c:\winnt\php.ini "

moi je lance easyphp et je vais dans le fichier de configuration

merci pour votre aide
CYCLOPE91440 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/12/2006, 21h53   #16
Candidat au titre de Membre du Club
 
Inscription : décembre 2006
Messages : 76
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : décembre 2006
Messages : 76
Points : 12
Points : 12
voici mon index.php


Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
        <title>Bienvenue sur le site de demande d'intervention</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    </head>
    <body>
	<?php
include("connexion.php");
	<div class="corps"><h2 class="sidebar-title">Identification</h2><br />
	<i>Bienvenue, veuillez entrer votre nom et votre mot de passe pour vous connecter.</i><br /><br />
	<div style="padding-left:40px;">
	<form action="formulaire.php" method="post">
	<b>Nom</b>:<br />
	<input type="text" name="nom" value=""/> <input class="h" type="submit" name="ok" value="Se connecter"/><br />
	<b>Password</b>:<br />
	<input type="password" name="pass" value="password"/><br />
	</form>
	</div>
	<br />
	<br />
 
	</div>
include("deconnexion.php");
?>	
</body>
</html>
avec nom de la base: XE
nom du service ben d'après le fichier tnsnames.ora on va dire xe

il me met ça comme erreur

Parse error: parse error in c:\program files\easyphp1-8\www\test1\index.php on line 12

pouvez vous m'aidez à corriger?
CYCLOPE91440 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/12/2006, 22h50   #17
Membre Expert
 
Inscription : avril 2006
Messages : 1 338
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : avril 2006
Messages : 1 338
Points : 1 315
Points : 1 315
Code :
1
2
3
4
5
include("connexion.php");
	<div class="corps"><h2 class="sidebar-title">Identification</h2><br />
	<i>Bienvenue, veuillez entrer votre nom et votre mot de passe pour vous connecter.</i><
... ceci est du html  ;) ...
?>
Il te faut donc mettre un echo

Code :
1
2
echo '<div class="corps"><h2 class="sidebar-title">Identification</h2><br />
	<i>Bienvenue, veuillez entrer votre nom et votre mot de passe pour vous connecter.</i><[/B] ... ';
ou tu ferme le scipt php avan (?> et ensuite le html)

mé ce n'est jamais tres lisible d'alterner script php et html
__________________
Stay in Bed .. Save Energy
boo64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h16.


 
 
 
 
Partenaires

Hébergement Web