The forum will experience an outage sometime between February 10 at 7:00pm EST and February 12 at 11:59 EST for installation of security updates. The actual time and duration of the outage are unknown but attempts will be made to minimize the downtime. We apologize for any inconvenience.

Hi, All! Sorry for my English(
I want to connect to SQL Anywhere database from PHP 5.2.x script. The database is created and started on remote server with SA-11.0. All are of threaded versions on x86-32bit Linux (core 2.6). I tried to solve problem on 2 ways.

1) rebuild only PHP
Is the PHP5.x.y work with Sybase PHP-module php-5.x.y_sqlanywhere_r.so (or without '_r') which loaded from here (http://scn.sap.com/docs/DOC-40537) or from distribution package? All my versions PHP 5.2.(6 / 13 / mainly 17) can't load any PHP-module with the same warning: unknown symbol "executor_globals". As result I can't connect to remote database from PHP script. The PHP-module is set as
extension=php-5.x.y_sqlanywhere_r.so

in php.ini.

This have occured with- and without SQL Anywhere Client v12.0 software installed and also with Variables set:

PATH=....  
LD_LIBRARY_PATH=....  
SQLANYWHERE12=....  
SYYBASE=....  
SYBPLATFORM=linux

etc.

2) rebuild PHP + Sybase PHP-module
My attemptings to compile PHP with the new option "--with-sqlanywhere" were failed at make step:

./buildconf --force   (from new directory "*...../php-5.2.17/ext/sqlanywhere*",  then delete '\0D' from configure and save)
./configure .... --with-sqlanywhere
make

The last "good" rows on screen are :

/bin/sh /......./php-5.2.17/libtool --silent --preserve-dup-deps --mode=compile ..........  
...........ext/sqlanywhere/sqlanywhere.c -o ext/sqlanywhere/sqlanywhere.lo

Then script failed:

...../php-5.2.17/ext/sqlanywhere/sqlanywhere.c: In function 'zm_startup_sqlanywhere':  
...../php-5.2.17/ext/sqlanywhere/sqlanywhere.c:886: warning: passing argument 3 of 'ts_allocate_id' from incompatible pointer type

...../php-5.2.17/Zend/../TSRM/TSRM.h:105: note: expected 'ts_allocate_ctor' but argument is of type 'void (*)(struct zend_sqlanywhere_globals *, void ***)'  
...../php-5.2.17/ext/sqlanywhere/sqlanywhere.c: In function 'SQLAnywhereConnect':

...../php-5.2.17/ext/sqlanywhere/sqlanywhere.c:1176: error: too many arguments to function 'zend_list_insert'  
...../php-5.2.17/ext/sqlanywhere/sqlanywhere.c:1243: error: too many arguments to function 'zend_list_insert'  
...../php-5.2.17/ext/sqlanywhere/sqlanywhere.c: In function 'zif_sasql_pconnect_from_sqlca':  
...../php-5.2.17/ext/sqlanywhere/sqlanywhere.c:1348: error: too many arguments to function 'zend_list_insert'  
........................  
........................  
...../php-5.2.17/ext/sqlanywhere/sqlanywhere.c: In function 'zif_sqlanywhere_query':

...../php-5.2.17/ext/sqlanywhere/sqlanywhere.c:3943: error: too many arguments to function 'zend_list_insert'  
make: *** [ext/sqlanywhere/sqlanywhere.lo] Error 1  
-------------------------------------

What can I do?

P.S. I know about freeTDS, ODBC, Open Client and JDBC and I don't want PHP 5.3 In Windows the PHP-module works OK.

asked 21 Mar '14, 08:41

exp123's gravatar image

exp123
1111
accept rate: 0%

Be the first one to answer this question!
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:

×137
×46

question asked: 21 Mar '14, 08:41

question was seen: 1,190 times

last updated: 21 Mar '14, 08:41