f



php code from plsql using owa htp.p

can I run phpinfo(); or any php code from an oracle plsql package using
htp.p from the oracle web toolkit owa?

thanks

0
marvado (12)
2/28/2006 4:33:19 PM
comp.databases.oracle.server 22978 articles. 1 followers. Post Follow

8 Replies
16190 Views

Similar Articles

[PageSpeed] 43

I have no idea what phpinfo() does, but htp.p pushes whatever is as
parameter to
htp.p out to the web, using the mod_plsql.
So, if you have Apache by Oracle, and a call to a procedure that will
htp.p('phpinfo()');
your browser will receive phpinfo() - I doubt that is what you want.


Regards, 
Frank van Bortel

0
2/28/2006 7:08:19 PM
Hi Frank,

what I need is to run any php code using htp.p()
I might be missing something, in my oracle/apache/php configuration I
can only run flat .php files from /htdocs but can't run any php from a
plsql procedure to display on a browser with htp.p

anyone has ideas?

*btw phpinfo() is an internal php function that shows among other
things, all php environmental variables for your system.

--pedro.

0
marvado (12)
2/28/2006 9:52:28 PM
marvado@hotmail.com wrote:

> can I run phpinfo(); or any php code from an oracle plsql package using
> htp.p from the oracle web toolkit owa?

Not directly. Your two main options: invoke php scripts indirectly via html;
i.e. htp.p('<a href="http://server.tld/script.php">some php link</a>'), or;
use package UTL_HTTP.
0
Gerry
2/28/2006 11:24:13 PM
hm,

don't know if that's what I'd like to do. I basically am seeking a way
to invoke php from a package and keep everything within the database
without the need for flat files.

thanks

0
marvado (12)
3/1/2006 5:56:29 AM
On Tue, 28 Feb 2006 08:33:19 -0800, marvado wrote:

> can I run phpinfo(); or any php code from an oracle plsql package using
> htp.p from the oracle web toolkit owa?

You can, if you have a way of starting PHP interpreter from PL/SQL.
Proposed way of doing that would be the following: 

1) Find a way to link PHP module into Oracle RDBMS as an external
   procedure. That is not as far-fetched as it seems: there is
   such a software for perl. It's called "extproc_perl" and 
   can be found at: http://www.smashing.org/extproc_perl/
2) Use it from Oracle PL/SQL. If you want to call your package
   "HTP", you're more then welcome. Oracle doesn't reserve that
   name.

-- 
http://www.mgogala.com

0
gogala (1324)
3/1/2006 6:45:03 AM
On Tue, 28 Feb 2006 13:52:28 -0800, marvado wrote:

> *btw phpinfo() is an internal php function that shows among other
> things, all php environmental variables for your system.
> 
> --pedro.


It produces output like this:


PHP Version 5.1.2

System 	Linux medo.noip.com 2.6.15.4 #1 Tue Feb 21 20:34:25 EST 2006 i686
Build Date 	Feb 26 2006 03:55:09
Configure Command 	'./configure' '--with-apxs2=/opt/apache/bin/apxs' '--with-xmlrpc' '--with-zlib' '--with-bz2' '--with-ttf' '--with-gd' '--enable-gd-native-ttf' '--with-t1lib' '--with-freetype-dir' '--with-jpeg-dir' '--with-png-dir' '--with-config-file-path=/usr/local/lib/php' '--enable-sigchild' '--without-sqlite' '--without-pdo-sqlite' '--disable-mysql' '--with-oci8=/oracle/product/10g' '--with-pdo-oci=/oracle/product/10g'
Server API 	Apache 2.0 Handler
Virtual Directory Support 	disabled
Configuration File (php.ini) Path 	/usr/local/lib/php/php.ini
PHP API 	20041225
PHP Extension 	20050922
Zend Extension 	220051025
Debug Build 	no
Thread Safety 	disabled
Zend Memory Manager 	enabled
IPv6 Support 	enabled
Registered PHP Streams 	php, file, http, ftp, compress.bzip2, compress.zlib
Registered Stream Socket Transports 	tcp, udp, unix, udg
Registered Stream Filters 	string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, convert.iconv.*, bzip2.*, zlib.*

Zend logo This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies

PHP Credits
Configuration
PHP Core
Directive	Local Value	Master Value
allow_call_time_pass_reference	Off	Off
allow_url_fopen	On	On
always_populate_raw_post_data	Off	Off
arg_separator.input	&	&
arg_separator.output	&	&
asp_tags	Off	Off
auto_append_file	no value	no value
auto_globals_jit	On	On
auto_prepend_file	no value	no value
browscap	no value	no value
default_charset	no value	no value
default_mimetype	text/html	text/html
define_syslog_variables	Off	Off
disable_classes	no value	no value
disable_functions	no value	no value
display_errors	Off	Off
display_startup_errors	Off	Off
doc_root	no value	no value
docref_ext	no value	no value
docref_root	no value	no value
enable_dl	On	On
error_append_string	no value	no value
error_log	no value	no value
error_prepend_string	no value	no value
error_reporting	2047	2047
expose_php	On	On
extension_dir	/usr/local/lib/php/extensions/no-debug-non-zts-20050922	/usr/local/lib/php/extensions/no-debug-non-zts-20050922
file_uploads	On	On
highlight.bg	#FFFFFF	#FFFFFF
highlight.comment	#FF8000	#FF8000
highlight.default	#0000BB	#0000BB
highlight.html	#000000	#000000
highlight.keyword	#007700	#007700
highlight.string	#DD0000	#DD0000
html_errors	On	On
ignore_repeated_errors	Off	Off
ignore_repeated_source	Off	Off
ignore_user_abort	Off	Off
implicit_flush	Off	Off
include_path	.:/usr/local/lib/php:/usr/local/PHP	.:/usr/local/lib/php:/usr/local/PHP
log_errors	On	On
log_errors_max_len	1024	1024
magic_quotes_gpc	Off	Off
magic_quotes_runtime	Off	Off
magic_quotes_sybase	Off	Off
mail.force_extra_parameters	no value	no value
max_execution_time	30	30
max_input_time	60	60
open_basedir	no value	no value
output_buffering	4096	4096
output_handler	no value	no value
post_max_size	8M	8M
precision	14	14
realpath_cache_size	16K	16K
realpath_cache_ttl	120	120
register_argc_argv	Off	Off
register_globals	Off	Off
register_long_arrays	Off	Off
report_memleaks	On	On
report_zend_debug	On	On
safe_mode	Off	Off
safe_mode_exec_dir	no value	no value
safe_mode_gid	Off	Off
safe_mode_include_dir	no value	no value
sendmail_from	no value	no value
sendmail_path	/usr/sbin/sendmail -t -i 	/usr/sbin/sendmail -t -i 
serialize_precision	100	100
short_open_tag	On	On
SMTP	localhost	localhost
smtp_port	25	25
sql.safe_mode	Off	Off
track_errors	Off	Off
unserialize_callback_func	no value	no value
upload_max_filesize	2M	2M
upload_tmp_dir	no value	no value
user_dir	no value	no value
variables_order	GPCS	GPCS
xmlrpc_error_number	0	0
xmlrpc_errors	Off	Off
y2k_compliance	On	On
zend.ze1_compatibility_mode	Off	Off

apache2handler
Apache Version 	Apache/2.0.54 (Unix) PHP/5.1.2
Apache API Version 	20020903
Server Administrator 	gogala@sbcglobal.net
Hostname:Port 	localhost:80
User/Group 	nobody(99)/-1
Max Requests 	Per Child: 0 - Keep Alive: on - Max Per Connection: 100
Timeouts 	Connection: 300 - Keep-Alive: 15
Virtual Server 	No
Server Root 	/opt/apache
Loaded Modules 	core mod_access mod_auth mod_include mod_log_config mod_env mod_setenvif prefork http_core mod_mime mod_status mod_autoindex mod_asis mod_cgi mod_negotiation mod_dir mod_imap mod_actions mod_userdir mod_alias mod_so mod_php5

Directive	Local Value	Master Value
engine	1	1
last_modified	0	0
xbithack	0	0

Apache Environment
Variable	Value
HTTP_HOST 	localhost
HTTP_USER_AGENT 	Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.1) Gecko/20060124 Firefox/1.5.0.1
HTTP_ACCEPT 	text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
HTTP_ACCEPT_LANGUAGE 	en-us,en;q=0.5
HTTP_ACCEPT_ENCODING 	gzip,deflate
HTTP_ACCEPT_CHARSET 	ISO-8859-1,utf-8;q=0.7,*;q=0.7
HTTP_KEEP_ALIVE 	300
HTTP_CONNECTION 	keep-alive
HTTP_COOKIE 	OracletoolRecent=10G; 10G.sessionid=b3BzJG1nb2dhbGE%3D-cXdlcnR5-Z6mkr%2Blk7Mq%2F2lcHnmI5YQ%3D%3D
PATH 	/opt/apache/bin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin
SERVER_SIGNATURE 	<address>Apache/2.0.54 (Unix) PHP/5.1.2 Server at localhost Port 80</address>
SERVER_SOFTWARE 	Apache/2.0.54 (Unix) PHP/5.1.2
SERVER_NAME 	localhost
SERVER_ADDR 	127.0.0.1
SERVER_PORT 	80
REMOTE_ADDR 	127.0.0.1
DOCUMENT_ROOT 	/opt/apache/htdocs
SERVER_ADMIN 	gogala@sbcglobal.net
SCRIPT_FILENAME 	/usr/local/mydoc/first.php
REMOTE_PORT 	50674
GATEWAY_INTERFACE 	CGI/1.1
SERVER_PROTOCOL 	HTTP/1.1
REQUEST_METHOD 	GET
QUERY_STRING 	no value
REQUEST_URI 	/mydoc/first.php
SCRIPT_NAME 	/mydoc/first.php

HTTP Headers Information
HTTP Request Headers
HTTP Request 	GET /mydoc/first.php HTTP/1.1
Host 	localhost
User-Agent 	Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.1) Gecko/20060124 Firefox/1.5.0.1
Accept 	text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language 	en-us,en;q=0.5
Accept-Encoding 	gzip,deflate
Accept-Charset 	ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive 	300
Connection 	keep-alive
Cookie 	OracletoolRecent=10G; 10G.sessionid=b3BzJG1nb2dhbGE%3D-cXdlcnR5-Z6mkr%2Blk7Mq%2F2lcHnmI5YQ%3D%3D
HTTP Response Headers
X-Powered-By 	PHP/5.1.2
Keep-Alive 	timeout=15, max=100
Connection 	Keep-Alive
Transfer-Encoding 	chunked
Content-Type 	text/html; charset=ISO-8859-1

bz2
BZip2 Support 	Enabled
Stream Wrapper support 	compress.bz2://
Stream Filter support 	bzip2.decompress, bzip2.compress
BZip2 Version 	1.0.2, 30-Dec-2001

ctype
ctype functions 	enabled

date
date/time support 	enabled
Timezone Database Version 	2005.18
Timezone Database 	internal
Default timezone 	America/New_York

Directive	Local Value	Master Value
date.default_latitude	31.7667	31.7667
date.default_longitude	35.2333	35.2333
date.sunrise_zenith	90.583333	90.583333
date.sunset_zenith	90.583333	90.583333
date.timezone	no value	no value

dom
DOM/XML 	enabled
DOM/XML API Version 	20031129
libxml Version 	2.6.22
HTML Support 	enabled
XPath Support 	enabled
XPointer Support 	enabled
Schema Support 	enabled
RelaxNG Support 	enabled

gd
GD Support 	enabled
GD Version 	bundled (2.0.28 compatible)
FreeType Support 	enabled
FreeType Linkage 	with freetype
FreeType Version 	2.1.9
T1Lib Support 	enabled
GIF Read Support 	enabled
GIF Create Support 	enabled
JPG Support 	enabled
PNG Support 	enabled
WBMP Support 	enabled
XBM Support 	enabled

hash
hash support	enabled
Hashing Engines	md4 md5 sha1 sha256 sha384 sha512 ripemd128 ripemd160 whirlpool tiger128,3 tiger160,3 tiger192,3 tiger128,4 tiger160,4 tiger192,4 snefru gost adler32 crc32 crc32b haval128,3 haval160,3 haval192,3 haval224,3 haval256,3 haval128,4 haval160,4 haval192,4 haval224,4 haval256,4 haval128,5 haval160,5 haval192,5 haval224,5 haval256,5

iconv
iconv support 	enabled
iconv implementation 	glibc
iconv library version 	2.3.6

Directive	Local Value	Master Value
iconv.input_encoding	ISO-8859-1	ISO-8859-1
iconv.internal_encoding	ISO-8859-1	ISO-8859-1
iconv.output_encoding	ISO-8859-1	ISO-8859-1

libxml
libXML support 	active
libXML Version 	2.6.22
libXML streams 	enabled

oci8
OCI8 Support 	enabled
Revision 	$Revision: 1.269.2.8 $
Active Persistent Connections 	0
Active Connections 	0
Oracle Version 	10.1
Compile-time ORACLE_HOME 	/oracle/product/10g
Libraries Used 	no value
Temporary Lob support 	enabled
Collections support 	enabled

Directive	Local Value	Master Value
oci8.default_prefetch	10	10
oci8.max_persistent	-1	-1
oci8.old_oci_close_semantics	0	0
oci8.persistent_timeout	-1	-1
oci8.ping_interval	60	60
oci8.privileged_connect	Off	Off
oci8.statement_cache_size	20	20

pcre
PCRE (Perl Compatible Regular Expressions) Support 	enabled
PCRE Library Version 	6.2 01-Aug-2005

PDO
PDO support	enabled
PDO drivers 	oci

PDO_OCI
PDO Driver for OCI 8 and later	enabled

posix
Revision 	$Revision: 1.70.2.3 $

Reflection
Reflection	enabled
Version 	$Id: php_reflection.c,v 1.164.2.17 2006/01/01 12:50:12 sniper Exp $

session
Session Support 	enabled
Registered save handlers 	files user
Registered serializer handlers 	php php_binary

Directive	Local Value	Master Value
session.auto_start	Off	Off
session.bug_compat_42	Off	Off
session.bug_compat_warn	On	On
session.cache_expire	180	180
session.cache_limiter	nocache	nocache
session.cookie_domain	no value	no value
session.cookie_lifetime	0	0
session.cookie_path	/	/
session.cookie_secure	Off	Off
session.entropy_file	no value	no value
session.entropy_length	0	0
session.gc_divisor	1000	1000
session.gc_maxlifetime	1440	1440
session.gc_probability	1	1
session.hash_bits_per_character	5	5
session.hash_function	0	0
session.name	PHPSESSID	PHPSESSID
session.referer_check	no value	no value
session.save_handler	files	files
session.save_path	no value	no value
session.serialize_handler	php	php
session.use_cookies	On	On
session.use_only_cookies	Off	Off
session.use_trans_sid	0	0

SimpleXML
Simplexml support	enabled
Revision 	$Revision: 1.151.2.10 $
Schema support 	enabled

SPL
SPL support	enabled
Interfaces 	Countable, OuterIterator, RecursiveIterator, SeekableIterator, SplObserver, SplSubject
Classes 	AppendIterator, ArrayIterator, ArrayObject, BadFunctionCallException, BadMethodCallException, CachingIterator, DirectoryIterator, DomainException, EmptyIterator, FilterIterator, InfiniteIterator, InvalidArgumentException, IteratorIterator, LengthException, LimitIterator, LogicException, NoRewindIterator, OutOfBoundsException, OutOfRangeException, OverflowException, ParentIterator, RangeException, RecursiveArrayIterator, RecursiveCachingIterator, RecursiveDirectoryIterator, RecursiveFilterIterator, RecursiveIteratorIterator, RuntimeException, SimpleXMLIterator, SplFileInfo, SplFileObject, SplObjectStorage, SplTempFileObject, UnderflowException, UnexpectedValueException

standard
Regex Library 	Bundled library enabled
Dynamic Library Support 	enabled
Path to sendmail 	/usr/sbin/sendmail -t -i

Directive	Local Value	Master Value
assert.active	1	1
assert.bail	0	0
assert.callback	no value	no value
assert.quiet_eval	0	0
assert.warning	1	1
auto_detect_line_endings	0	0
default_socket_timeout	60	60
safe_mode_allowed_env_vars	PHP_	PHP_
safe_mode_protected_env_vars	LD_LIBRARY_PATH	LD_LIBRARY_PATH
url_rewriter.tags	a=href,area=href,frame=src,input=src,form=fakeentry	a=href,area=href,frame=src,input=src,form=fakeentry
user_agent	no value	no value

tokenizer
Tokenizer Support 	enabled

xml
XML Support 	active
XML Namespace Support 	active
libxml2 Version 	2.6.22

xmlreader
XMLReader 	enabled

xmlrpc
core library version 	xmlrpc-epi v. 0.51
php extension version 	0.51
author 	Dan Libby
homepage 	http://xmlrpc-epi.sourceforge.net
open sourced by 	Epinions.com

xmlwriter
XMLWriter 	enabled

zlib
ZLib Support 	enabled
Stream Wrapper support 	compress.zlib://
Stream Filter support 	zlib.inflate, zlib.deflate
Compiled Version 	1.2.2.2
Linked Version 	1.2.2.2

Directive	Local Value	Master Value
zlib.output_compression	Off	Off
zlib.output_compression_level	-1	-1
zlib.output_handler	no value	no value

Additional Modules
Module Name

Environment
Variable	Value
CONSOLE 	/dev/console
SELINUX_INIT 	YES
TERM 	linux
NLS_LANG 	AMERICAN_AMERICA.WE8ISO8859P1
TWO_TASK 	local
LD_LIBRARY_PATH 	/opt/apache/lib:/oracle/product/10g/lib
INIT_VERSION 	sysvinit-2.85
ORA_NLS10 	/oracle/product/10g/nls/data
PATH 	/opt/apache/bin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin
TNS_ADMIN 	/oracle/product/10g/network/admin
runlevel 	5
RUNLEVEL 	5
PWD 	/
LANG 	en_US
previous 	N
PREVLEVEL 	N
SHLVL 	3
HOME 	/
APACHE_HOME 	/opt/apache
ORACLE_HOME 	/oracle/product/10g
_ 	/opt/apache/bin/httpd

PHP Variables
Variable	Value
_REQUEST["OracletoolRecent"]	10G
_REQUEST["10G_sessionid"]	b3BzJG1nb2dhbGE=-cXdlcnR5-Z6mkr+lk7Mq/2lcHnmI5YQ==
_COOKIE["OracletoolRecent"]	10G
_COOKIE["10G_sessionid"]	b3BzJG1nb2dhbGE=-cXdlcnR5-Z6mkr+lk7Mq/2lcHnmI5YQ==
_SERVER["HTTP_HOST"]	localhost
_SERVER["HTTP_USER_AGENT"]	Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.1) Gecko/20060124 Firefox/1.5.0.1
_SERVER["HTTP_ACCEPT"]	text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
_SERVER["HTTP_ACCEPT_LANGUAGE"]	en-us,en;q=0.5
_SERVER["HTTP_ACCEPT_ENCODING"]	gzip,deflate
_SERVER["HTTP_ACCEPT_CHARSET"]	ISO-8859-1,utf-8;q=0.7,*;q=0.7
_SERVER["HTTP_KEEP_ALIVE"]	300
_SERVER["HTTP_CONNECTION"]	keep-alive
_SERVER["HTTP_COOKIE"]	OracletoolRecent=10G; 10G.sessionid=b3BzJG1nb2dhbGE%3D-cXdlcnR5-Z6mkr%2Blk7Mq%2F2lcHnmI5YQ%3D%3D
_SERVER["PATH"]	/opt/apache/bin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin
_SERVER["SERVER_SIGNATURE"]	<address>Apache/2.0.54 (Unix) PHP/5.1.2 Server at localhost Port 80</address>
_SERVER["SERVER_SOFTWARE"]	Apache/2.0.54 (Unix) PHP/5.1.2
_SERVER["SERVER_NAME"]	localhost
_SERVER["SERVER_ADDR"]	127.0.0.1
_SERVER["SERVER_PORT"]	80
_SERVER["REMOTE_ADDR"]	127.0.0.1
_SERVER["DOCUMENT_ROOT"]	/opt/apache/htdocs
_SERVER["SERVER_ADMIN"]	gogala@sbcglobal.net
_SERVER["SCRIPT_FILENAME"]	/usr/local/mydoc/first.php
_SERVER["REMOTE_PORT"]	50674
_SERVER["GATEWAY_INTERFACE"]	CGI/1.1
_SERVER["SERVER_PROTOCOL"]	HTTP/1.1
_SERVER["REQUEST_METHOD"]	GET
_SERVER["QUERY_STRING"]	no value
_SERVER["REQUEST_URI"]	/mydoc/first.php
_SERVER["SCRIPT_NAME"]	/mydoc/first.php
_SERVER["PHP_SELF"]	/mydoc/first.php
_SERVER["REQUEST_TIME"]	1141195856

PHP License

This program is free software; you can redistribute it and/or modify it under the terms of the PHP License as published by the PHP Group and included in the distribution in the file: LICENSE

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

If you did not receive a copy of the PHP license, or have any questions about PHP licensing, please contact license@php.net.



-- 
http://www.mgogala.com

0
gogala (1324)
3/1/2006 6:53:39 AM
can't find an interperter like you said, Mladen

thanks

0
marvado (12)
3/1/2006 4:20:26 PM
marvado@hotmail.com wrote:

> hm,
> 
> don't know if that's what I'd like to do. I basically am seeking a way
> to invoke php from a package and keep everything within the database
> without the need for flat files.

There is no php in Oracle... period!  But there is another option, you could
create an external library (say, using GNU gcc) to invoke php, then
register the library and wrapper in Oracle and invoke it from pl/sql.  You
could use pipes to avoid doing file i/o.  The drawback is you app will
become platform-dependent.

Here's a link that should help you get started:  

http://home.clara.net/dwotton/dba/oracle_extn_rtn.htm
0
Gerry
3/1/2006 6:38:29 PM
Reply: