For Programmers: Free Programming Magazines  


Home > Archive > PHP Programming > August 2004 > Fatal error: Call to undefined function









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author Fatal error: Call to undefined function
gc

2004-08-29, 3:55 am

I'm a PHP and MySQL newbie. I have a feeling a lot of you may have seen this
before. I'm teaching myself PHP/MySQL and trying to setup a guestbook. I'm
running latest versions of Apache, PHP and MySql on WIN 2000. PHP is
installed from the zip file. When serving php docs (code snippets below) I
get the messages:

"Fatal error: Call to undefined function mysql_connect() "

"Fatal error: Call to undefined function mysql_pconnect() "

I've been reading and searching and trying all sorts of things to fix this
and can't find the solution. I've removed the comment from the line
"extension=php_mysql.dll" in php.ini. (Below is the MySQL section of
php.ini. It's pretty standard, I'm using defaults.) I edited my Apache
config file with the needed lines:

### Section 4: PHP 5 Module
#
LoadModule php5_module "C:/Program Files/Apache
Group/Apache2/PHP/php5apache2.dll"
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
PHPIniDir "C:/Program Files/Apache Group/Apache2/PHP"

When I run phpinfo, MySQL is not listed. Do I need to enable it in the
configure command? How do I edit the configure command. Per phpinfo, It now
reads:

Configure Command cscript /nologo configure.js "--with-gd=shared"
"--enable-snapshot-build"

I read these comments online:

Ok, your php.ini file is set to 'on' for mysql.allow_persistent, but is
mysql really enabled? Does your configure command look something like this?

'./configure'
'--with-mysql=/usr/local/mysql'............................................

If you don't have --with-mysql it means that you cannot use mysql
functions, so compile PHP again with this option.



How do I edit that pesky configure command. I searched, but couldn't find an
answer. So, where am I going wrong? Thanks for reading and big thanks for
any help.

gene

sunishun@verizon.net



php.ini snippet (comments removed for easier reading:

[MySQL]
mysql.allow_persistent = On
mysql.max_persistent = -1
mysql.max_links = -1
mysql.default_port =
mysql.default_socket =
mysql.default_host =
mysql.default_user =
mysql.default_password =
mysql.connect_timeout = 60
mysql.trace_mode = Off


guest.php code snippet:

//connect
// change localhost to your db host name
mysql_pconnect( "http://aulon.dyndns.org/", "$username", "$password")
or die( "Unable to connect to SQL server");
mysql_select_db( "$db_name") or die( "Unable to select database");
guestbook.php code snippet:
// Connect to DB
$li = mysql_connect($dbHost, $dbUser, $dbPass) or die("Could not connect");
mysql_select_db($dbDatabase, $li) or die ("could not select DB");


Jasper Bryant-Greene

2004-08-29, 3:56 am

gc wrote:

> I've been reading and searching and trying all sorts of things to fix this
> and can't find the solution. I've removed the comment from the line
> "extension=php_mysql.dll" in php.ini. (Below is the MySQL section of
> php.ini. It's pretty standard, I'm using defaults.) I edited my Apache
> config file with the needed lines:


So you've uncommented the extension line in php.ini - have you copied
libMySQL.dll from the PHP directory (or one of the directories under it
- I forget what the dir is called now) into your \windows\system32 or
equivilant directory? PHP needs this MySQL client library for the
extension to work.

> How do I edit that pesky configure command. I searched, but couldn't find an
> answer. So, where am I going wrong? Thanks for reading and big thanks for
> any help.


You can't edit the configure command with a Windows binary distribution
- the configure command is passed at build-time but you aren't building
from source.

--
Jasper Bryant-Greene
Cabbage Promotions
Pjotr Wedersteers

2004-08-29, 8:56 am

gc wrote:
> I'm a PHP and MySQL newbie. I have a feeling a lot of you may have
> seen this before. I'm teaching myself PHP/MySQL and trying to setup a
> guestbook. I'm running latest versions of Apache, PHP and MySql on
> WIN 2000. PHP is installed from the zip file. When serving php docs
> (code snippets below) I get the messages:
>
> "Fatal error: Call to undefined function mysql_connect() "
>
> "Fatal error: Call to undefined function mysql_pconnect() "
>
> I've been reading and searching and trying all sorts of things to fix
> this and can't find the solution. I've removed the comment from the
> line "extension=php_mysql.dll" in php.ini. (Below is the MySQL
> section of php.ini. It's pretty standard, I'm using defaults.) I
> edited my apache config file with the needed lines:
>
> ### Section 4: PHP 5 Module
> #
> LoadModule php5_module "C:/Program Files/Apache
> Group/Apache2/PHP/php5apache2.dll"
> AddType application/x-httpd-php .php
> AddType application/x-httpd-php-source .phps
> PHPIniDir "C:/Program Files/Apache Group/Apache2/PHP"
>

Latest MySQL and PHP5 don't mix by default on Windows. You need another
Mysqllib. There are some functions that no longer exist in PHP I believe. I
found it a nightmare to get it to work, but others can probably point out
how exactly to do this. I gave up after hours of toying, went back to PHP
4.3.8 so I can't exactly tell you how to go about it.

Good luck
Pjotr


gc

2004-08-29, 8:55 pm

Thanks, Pjotr! I went to v4.3.8 and it works with no problems! What a
headache that was trying to get v5 to work, and me being a newbie, it was
really not fun at all.

Thanks also, to everyone that replied.
gene

"Pjotr Wedersteers" <x33159@westerterp.com> wrote in message
news:4131ae42$0$25965$e4fe514c@news.xs4all.nl...
> gc wrote:
> Latest MySQL and PHP5 don't mix by default on Windows. You need another
> Mysqllib. There are some functions that no longer exist in PHP I believe.

I
> found it a nightmare to get it to work, but others can probably point out
> how exactly to do this. I gave up after hours of toying, went back to PHP
> 4.3.8 so I can't exactly tell you how to go about it.
>
> Good luck
> Pjotr
>
>



Sebastian Lauwers

2004-08-30, 3:56 am

gc wrote:

> Thanks, Pjotr! I went to v4.3.8 and it works with no problems! What a
> headache that was trying to get v5 to work, and me being a newbie, it was
> really not fun at all.


Next time just put your libmysql.dll in your PATH environment.

AND hell STOP multiposting!!
You said newbie?

> Thanks also, to everyone that replied.
> gene


Sebastian


--
The most likely way for the world to be destroyed,
most experts agree, is by accident.
That's where we come in; we're computer professionals.
We cause accidents.
--Nathaniel Borenstein
Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2010 codecomments.com