<?php
error_reporting( 0 );
$sa_version = '11';
# Attempt to load the SQLAnywhere PHP driver
# It is okay if this fails, we just won't be able to do
# server-side queries
if ( !extension_loaded( 'sqlanywhere' ) ) {
if ( strtoupper( substr( PHP_OS, 0, 3 ) ) === 'WIN' ) {
$load_result = dl( 'php-' . phpversion() . '_sqlanywhere.dll' );
if( !$load_result ) {
$load_result = dl( 'sqlanywhere.dll' );
}
} else {
$load_result = dl( 'php-' . phpversion() . '_sqlanywhere_r.so' );
if( !$load_result ) {
$load_result = dl( 'php-' . phpversion() . '_sqlanywhere.so' );
}
if( !$load_result ) {
$load_result = dl( 'sqlanywhere.so' );
}
}
}
# Attempt to load the SQLAnywhere PHP External Environment driver
# Failure to do so is fatal
if ( !extension_loaded( 'sqlanywhere_extenv' ) ) {
$load_result = 0;
if ( strtoupper( substr( PHP_OS, 0, 3 ) ) === 'WIN' ) {
$load_result = dl( 'php-' . phpversion() .
'_sqlanywhere_extenv' . $sa_version . '.dll' );
if( !$load_result ) {
$load_result = dl( 'php-' . phpversion() .
'_sqlanywhere_extenv.dll' );
}
if( !$load_result ) {
$load_result = dl( 'sqlanywhere_extenv' . $sa_version . '.dll' );
}
if( !$load_result ) {
$load_result = dl( 'sqlanywhere_extenv.dll' );
}
} else {
$load_result = dl( 'php-' . phpversion() .
'_sqlanywhere_extenv' . $sa_version . '_r.so' );
if( !$load_result ) {
$load_result = dl( 'php-' . phpversion() .
'_sqlanywhere_extenv' . $sa_version . '.so' );
}
if( !$load_result ) {
$load_result = dl( 'php-' . phpversion() .
'_sqlanywhere_extenv_r.so' );
}
if( !$load_result ) {
$load_result = dl( 'php-' . phpversion() .
'_sqlanywhere_extenv.so' );
}
if( !$load_result ) {
$load_result = dl( 'sqlanywhere_extenv' . $sa_version . '.so' );
}
if( !$load_result ) {
$load_result = dl( 'sqlanywhere_extenv.so' );
}
}
if( !$load_result ) {
print "ERROR: Could not load sqlanywhere_extenv PHP module\n";
exit;
}
}
error_reporting( -1 );
function sqlanywhere_extenv_execute_now( $signature )
{
# Reset the execution time clock so that we don't run out of time
# due to previous requests (but still allow *this* request to run out
# of time)
set_time_limit( ini_get('max_execution_time') );
# Attempt to register the default PHP connection
# We can only do this f the SQLAnywhere PHP driver has been loaded
# Check each time in case somebody has managed to load the driver in
# a previous call
if( extension_loaded( 'sqlanywhere' ) ) {
$sqlca = sqlanywhere_extenv_get_conn();
sasql_pconnect_from_sqlca( $sqlca );
}
$matches = array();
if( preg_match( '/^........\s*(<[^>]*>){0,1}((.|\n)*)/', $signature, $matches ) == 0 ) {
preg_match( '/^........((.|\n)*)/', $opt, $matches );
$err_str = sqlanywhere_extenv_get_error(
SQLANYWHERE_EE_BAD_BODY );
$err_str = sprintf( $err_str, $matches[1] );
sqlanywhere_extenv_set_error( $err_str );
return -1;
}
$sa_options = $matches[1];
$sa_php_code = $matches[2];
$argc = 0;
$args = '';
$sa_code = '';
if( strlen( $sa_options ) > 2 ) {
$option_array = preg_split( '/\s*\|\s*/',
substr( $sa_options, 1, -1 ) );
foreach( $option_array as $opt ) {
if( preg_match( '/\s*([^=]*)=(.*)/', $opt, $matches ) == 0 ) {
$err_str = sqlanywhere_extenv_get_error(
SQLANYWHERE_EE_BAD_OPTION );
$err_str = sprintf( $err_str, $opt );
sqlanywhere_extenv_set_error( $err_str );
return -1;
}
$key = $matches[1];
$value = $matches[2];
if( $key == 'args' ) {
if( preg_match( '/^((?:[IDBS])*)$/',
$value, $matches ) == 0 ) {
$err_str = sqlanywhere_extenv_get_error(
SQLANYWHERE_EE_BAD_ARG_LIST );
$err_str = sprintf( $err_str, $value );
sqlanywhere_extenv_set_error( $err_str );
return -1;
}
$args = $matches[1];
$argc = strlen( $args );
}
elseif( $key == 'file' ) {
$file_name = $value;
$temp_code = sqlanywhere_extenv_get_code( $file_name );
if( is_null( $temp_code ) ) {
# the SDK returns the error for this one
return -1;
}
$sa_code .= "?>\n" . $temp_code . "\n<?php\n";
}
else {
$err_str = sqlanywhere_extenv_get_error(
SQLANYWHERE_EE_UNKNOWN_KEY );
$err_str = sprintf( $err_str, $key );
sqlanywhere_extenv_set_error( $err_str );
return -1;
}
}
}
$args .= 'S';
global $argv;
$argv = sqlanywhere_extenv_get_args( $args, $argc, true );
if( is_null( $argv ) ) {
return -1;
}
$sa_code .= "\n" . $sa_php_code . ";\n";
try {
ob_start();
$sa_php_eval_retval = eval( $sa_code );
if( !defined( $sa_php_eval_retval ) &&
!is_null( $sa_php_eval_retval ) ) {
throw new Exception(
sqlanywhere_extenv_get_error( SQLANYWHERE_EE_PARSE_ERROR ) );
}
$argv[0] = @ob_get_clean();
} catch( Exception $e ) {
sqlanywhere_extenv_set_error( $e->getMessage() );
return -1;
}
if( is_null( sqlanywhere_extenv_set_output( $argv ) ) ) {
return -1;
}
return 0;
}
if( $argc != 5 ) {
print "usage: " . $argv[0] . " <engine> <database> <user> <password>\n";
exit;
}
sqlanywhere_extenv_start( 'sqlanywhere_extenv_execute_now',
$argv[1], $argv[2], $argv[3], $argv[4] );
?>
没有合适的资源?快使用搜索试试~ 我知道了~
SQL ANYWHERE 11 打包环境
共24个文件
dll:9个
lic:4个
ini:2个
3星 · 超过75%的资源 需积分: 9 45 下载量 114 浏览量
2010-03-21
12:22:04
上传
评论 2
收藏 4.75MB RAR 举报
温馨提示
pb使用Sql AnyWhere11,打包需要Sql AnyWhere的运行环境,通过测试整理,提取出需要的文件,先压缩提交方便大家使用
资源推荐
资源详情
资源评论
收起资源包目录
SQL ANYWHERE 11需要的文件.rar (24个子文件)
SQL ANYWHERE 11需要的文件
dbicudt11.dll 4.02MB
dbeng11.lic 381B
rsaroot.crt 890B
dbeng11.exe 127KB
dbcon11.dll 389KB
dbodbc11.dll 856KB
rteng11.exe 127KB
mlDomConfig.xsd 1017B
rebuild.bat 965B
dbserv11.dll 5.06MB
util_db.ini 67B
sasnmp.ini 0B
dbvssv11.dll 283KB
dblgen11.dll 818KB
dblib11.dll 742KB
perlenv.pl 4KB
dbicu11.dll 853KB
rteng11.lic 381B
sqlany.cvf 212KB
mlsrv11.lic 380B
dblgzh11.dll 460KB
dbsrv11.lic 380B
phpenv.php 6KB
rsaserver.id 3KB
共 24 条
- 1
资源评论
- 沧浪之海2018-04-05需要下载六个资源,我也是醉了
- test11sdf2014-07-05不好不好我不要
- song_dong_sheng2014-01-07还是用isqlw.exe方便。
wwwtang
- 粉丝: 8
- 资源: 11
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功