Re: undef func - any more clues ?

From: Date: Tue, 14 May 2013 08:16:16 +0000
Subject: Re: undef func - any more clues ?
References: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17  Groups: php.general 
Request: Send a blank email to php-general+get-321080@lists.php.net to get a copy of this message
On 5/13/2013 11:32 PM, georg wrote:
Thanks ! yum install php-odbc really did the trick. Now Im stuck where connect gives an error in apache error_log that it cannot find file /lib/libmimerodbc.so which is evidently there in exactly that place (as given in odbcini.ini for driver definition) ! A bit unexpected. (possibly an error in errorhandling ?, i.e. other cause)
So, the file /lib/libmimerodbc.so exists? If it does and Apache cannot access it, then it might be permissions. Make sure it is readable by httpd. And that your httpd is not setup in a chroot environment.
/georg ----- Original Message ----- From: "Jim Lucas" <lists@cmsws.com> To: "georg" <georg.chambert@telia.com> Cc: <ash@ashleysheridan.co.uk>; <php-general@lists.php.net> Sent: Tuesday, May 14, 2013 3:25 AM Subject: Re: [PHP] undef func - any more clues ?
On 05/12/2013 10:34 AM, georg wrote:
Hi Im not really following, I have done: pecl list-all ; but dont find anything that has to do with ODBC so still stuck with Apache error log saying : no such function (or eqiv speak) odbc_connect() tnx Georg
I am using a CentOS 6.4 system as a work station. So, with that said, the systems are similar, but still different enough that you need to make a few changes regarding the package names to get things working. I also have Apache installed the I develop with. These are the steps that I performed, and the order I performed them in, to get odbc working at the CLI and with Apache. Here first is an example of what I got when trying to call odbc_connect() without the proper packages installed from the CLI. [root@jim ~]# php -r "odbc_connect();" PHP Fatal error: Call to undefined function odbc_connect() in Command line code on line 1 Fatal error: Call to undefined function odbc_connect() in Command line code on line 1 Search for the correct package. [root@jim ~]$ yum list php* | grep -i odbc
php-odbc.x86_64                      5.3.3-22.el6         base
Install found package... (change the package name if needed) [root@jim ~]# yum install php-odbc ... Total download size: 428 k Installed size: 1.2 M Is this ok [y/N]: y ... Running Transaction
  Installing : unixODBC-2.2.14-12.el6_3.x86_64               1/2
  Installing : php-odbc-5.3.3-22.el6.x86_64                  2/2
  Verifying  : php-odbc-5.3.3-22.el6.x86_64                  1/2
  Verifying  : unixODBC-2.2.14-12.el6_3.x86_64               2/2
Installed: php-odbc.x86_64 0:5.3.3-22.el6 Dependency Installed: unixODBC.x86_64 0:2.2.14-12.el6_3 Complete! Update your locate database [root@jim ~]# updatedb Search for the recently installed package [root@jim ~]# locate odbc.so | grep php /usr/lib64/php/modules/odbc.so /usr/lib64/php/modules/pdo_odbc.so Re-run the first test - ah it is found... [root@jim ~]# php -r "odbc_connect();" PHP Warning: odbc_connect() expects at least 3 parameters, 0 given in Command line code on line 1 Warning: odbc_connect() expects at least 3 parameters, 0 given in Command line code on line 1 Once you have this, you know that everything in place to get it working with Apache. Now to test in the web server. This is what I received when I viewed my test script via Apache and my browser. URL: http://localhost/odbc_test.php Fatal error: Call to undefined function odbc_connect() in /var/www/html/odbc_test.php on line 3 Now, to get it working with Apache, all I had to do was restart the web server. [root@jim html]# service httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd:                                            [  OK  ]
Now, refreshing the above page gives me this. Warning: odbc_connect() expects at least 3 parameters, 0 given in /var/www/html/odbc_test.php on line 3 So, it is now working. Review my steps above, make sure you perform them as I did and you should be working when you are done. Let us know if you need anything further. -- Jim Lucas http://www.cmsws.com/ http://www.cmsws.com/examples/


« previous php.general (#321080) next »