Bonjour à tous et à toutes,
J'ai créé une fonction oracle qui me retourne un résultat.
Lorsque je teste cette fonction dans le terminal Oracle au travers du PL/SQL elle fonctionne parfaitement bien :
Le terminal me retoune :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Declare p1 number ; Begin p1 := GD_FUNC_AJOUT_DEMANDE('3','28/02/07','','','','','','','','','','','','','','','','','',''); DBMS_OUTPUT.PUT_LINE(p1); End ;
43 est le bon résultat donc c'est OK !anonymous block completed
43
Par contre, je souhaite obtenir ce résultat dans mon code PHP mais je n'y parviens pas :
PHP me retourne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 $query = "Declare p1 number ; begin p1 := GD_FUNC_AJOUT_DEMANDE('3','28/02/07','','','','','','','','','','','','','','','','','',''); DBMS_OUTPUT.PUT_LINE(p1); End ;"; $stid = OCIParse($Connect_DB, $query); OCIExecute($stid); while ($res = oci_fetch_row($stid)) { $NB=$Row[0]; } print ("ID = $NB");
Si quelqu'un sait comment je peux récupérer mon résultat je suis preneur !Warning: oci_fetch_row() [function.oci-fetch-row]: ORA-24374: définition non exécutée après extraction ou exécution et extraction in C:\Program Files\Apache Software ...
Pour info j'utilise PHP 5.x et ORACLE XE.
Mes autres requêtes SQL standard (ordre select ou update ...) fonctionnent parfaitement bien avec PHP.
D'avance merci,![]()
Alex01
Partager