PDA

Bekijk Volledige Versie : "undefined " mysql functies in php



W.G. de Roos
10/07/03, 18:50
Hallo mensen,

Sinds kort heb ik problemen met de standaard mysql functies in php. De
volgende foutmelding treedt steeds op zodra ik een standaard mysql
functie in php aanroep:

Fatal error: Call to undefined function: mysql_connect() in ...en dan
<filepath/filename>

Dit is dus ook zo bij mysql_select_db, mysql_result, etc. Het probleem
was er voorheen niet, waarom het er 'opeens' is weet ik niet precies.

Ik heb mijn php.ini en mijn httpd.conf van mijn werkende andere
systeem gehaald. Echter: het werkt nog niet. Php, mysql en apache heb
ik opnieuw geinstalleerd. De ondersteuning voor mysql in apache moet
goed zijn aangezien ik hetzelfde installatie script heb gebruikt die
ik ook tijdens de eerste installatie heb gebruikt.

Dit is het begin van mijn installatiescript:

../configure --with-mysql --with-apache=../apache_1.3.27
--enable-track-vars --with-gd-dir=../gd-2.0.12
--with-jpeg-dir=../jpeg-6b --with-png-dir=../libpng-1.2.5
--with-zlib-dir=../zlib-1.1.4 --with-xpm-dir=../xpm-3.4g
--with-t1lib=../t1lib-5.0.0

Via ask.com heb ik gezocht naar een oplossing. Men biedt o.a een aan
om wat extensies in php.ini toe te voegen:

">About 2/3 down this file are places to define
>
>extension_dir and extension
>
>Change these to
>
>extension_dir /usr/lib/php4
>
>extension mysql.so"

Deze oplossing werkt echter bij mij niet. Eveneens heb dit geprobeerd:

ln -s /usr/lib/libmysqlclient.so /usr/lib/libmysqlclient.so.11

Als ik via phpinfo() kijk zie ik wel staan dat er mysql ondersteuning
is.

Na al deze 'oplossingen blijft mijn probleem echter bestaan.

Het systeem dat ik gebruik bestaat uit:
Slackware 9.0, kernel 2.4.20
Apache 1.3.27
PHP 4.3.1
mysql Ver 11.18 Distrib 3.23.56, for slackware-linux (i386)

Weet iemand hoe ik dit kan oplossen?

Alvast bedankt,

Groetjes,

Wiebe

Daniel Tryba
10/07/03, 19:05
W.G. de Roos <weeb@frummel.com> wrote:
> Dit is het begin van mijn installatiescript:
>
> ./configure --with-mysql --with-apache=../apache_1.3.27
> --enable-track-vars --with-gd-dir=../gd-2.0.12
> --with-jpeg-dir=../jpeg-6b --with-png-dir=../libpng-1.2.5
> --with-zlib-dir=../zlib-1.1.4 --with-xpm-dir=../xpm-3.4g
> --with-t1lib=../t1lib-5.0.0

En wat is de (relevante) output hiervan?

--

Daniel Tryba

W.G. de Roos
10/07/03, 21:05
On Thu, 10 Jul 2003 16:56:44 +0000 (UTC), Daniel Tryba
<news_nl.internet.www.server-side@canopus.nl> wrote:

>W.G. de Roos <weeb@frummel.com> wrote:
>> Dit is het begin van mijn installatiescript:
>>
>> ./configure --with-mysql --with-apache=../apache_1.3.27
>> --enable-track-vars --with-gd-dir=../gd-2.0.12
>> --with-jpeg-dir=../jpeg-6b --with-png-dir=../libpng-1.2.5
>> --with-zlib-dir=../zlib-1.1.4 --with-xpm-dir=../xpm-3.4g
>> --with-t1lib=../t1lib-5.0.0
>
>En wat is de (relevante) output hiervan?
>
>--
>
> Daniel Tryba
>

Eum, een werkend php/mysql/apache systeem...maar dit is enkel ter
illustratie dat ik apache wel met mysql heb gecompileerd. Maakt weinig
uit voor 't probleem dak heb.

weeb

Daniel Tryba
10/07/03, 21:20
W.G. de Roos <weeb@frummel.com> wrote:
>>> Dit is het begin van mijn installatiescript:
>>>
>>> ./configure --with-mysql --with-apache=../apache_1.3.27
>>> --enable-track-vars --with-gd-dir=../gd-2.0.12
>>> --with-jpeg-dir=../jpeg-6b --with-png-dir=../libpng-1.2.5
>>> --with-zlib-dir=../zlib-1.1.4 --with-xpm-dir=../xpm-3.4g
>>> --with-t1lib=../t1lib-5.0.0
>>
>>En wat is de (relevante) output hiervan?
>
> Eum, een werkend php/mysql/apache systeem...maar dit is enkel ter
> illustratie dat ik apache wel met mysql heb gecompileerd.

Ehhhh, dit is het configure script van PHP en niet van Apache. Dus wat
is de relevante output hiervan op h etprobleem systeem (en de output van
phpinfo waarop je baseerd dat het zou moeten werken zou ook wel leuk
zijn).

--

Daniel Tryba

W.G. de Roos
10/07/03, 23:05
On Thu, 10 Jul 2003 19:05:38 +0000 (UTC), Daniel Tryba
<news_nl.internet.www.server-side@canopus.nl> wrote:

>W.G. de Roos <weeb@frummel.com> wrote:
>>>> Dit is het begin van mijn installatiescript:
>>>>
>>>> ./configure --with-mysql --with-apache=../apache_1.3.27
>>>> --enable-track-vars --with-gd-dir=../gd-2.0.12
>>>> --with-jpeg-dir=../jpeg-6b --with-png-dir=../libpng-1.2.5
>>>> --with-zlib-dir=../zlib-1.1.4 --with-xpm-dir=../xpm-3.4g
>>>> --with-t1lib=../t1lib-5.0.0
>>>
>>>En wat is de (relevante) output hiervan?
>>
>> Eum, een werkend php/mysql/apache systeem...maar dit is enkel ter
>> illustratie dat ik apache wel met mysql heb gecompileerd.
>
>Ehhhh, dit is het configure script van PHP en niet van Apache. Dus wat
>is de relevante output hiervan op h etprobleem systeem (en de output van
>phpinfo waarop je baseerd dat het zou moeten werken zou ook wel leuk
>zijn).
>
>--
>
> Daniel Tryba
>

Eum d'r lopen wat dingen door elkaar, dacht nog wel dat ik het
enigszins duidelijk had staan (-:

Dat install script is, zoals gezegd enkel om aan te geven dat ik in
apache ondersteuning heb voor zowel mysql als php. PHP werkt gewoon
binnen apache op de ingebouwde functies van mysql na dus. Dat had ik
in mijn post gezet. De rest gaat goed.

Het gaat dus om deze error:

Call to undefined function: mysql_connect() --> die treedt overal op.

Ik weet niet hoe ik dit kan fixen en ik vind het vreemd dat alleen de
aanroep van de mysql functies errors geven en dat de rest van de
functies goed werkt.

In de phpinfo vind ik o.a dit:

'./configure' '--prefix=/usr' '--disable-static'
'--with-apxs=/usr/sbin/apxs' '--enable-discard-path'
'--with-config-file-path=/etc/apache' '--enable-safe-mode'
'--with-openssl' '--enable-bcmath' '--with-bz2' '--with-pic'
'--enable-calendar' '--enable-ctype' '--with-gdbm' '--with-db2'
'--with-db3' '--with-imap-ssl=/tmp/pine4.53/imap/c-client'
'--with-imap=/tmp/pine4.53/imap/c-client' '--enable-dbase'
'--enable-ftp' '--with-gd' '--enable-gd-native-ttf'
'--with-jpeg-dir=/usr' '--with-png' '--with-gmp'
'--with-mysql=shared,/usr' '--with-xml=shared,/usr' '--with-mm=/usr'
'--enable-trans-sid' '--enable-shmop' '--enable-sockets'
'--with-regex=php' '--enable-sysvsem' '--enable-sysvshm' '--enable-yp'
'--enable-memory-limit' '--with-tsrm-pthreads' '--enable-shared'
'--disable-debug' '--with-zlib=/usr'

Dat moet dus goed zijn, daar zit het probleem denk ik ook niet in.

Wat ik denk is een probleem in de koppeling mysql/php, maar hoe dat
zit weet ik niet, aangezien het systeem wel aangeeft dat alles goed
gecompileerd en ge-installeerd is.

Overigens had je gelijk mbt waar dat install script van was: dat was
idd van php. Foutje van mijn kant.

Maargoed: probleem is er nog (-:

Wiebe

Daniel Tryba
10/07/03, 23:20
W.G. de Roos <weeb@frummel.com> wrote:
>>>>> Dit is het begin van mijn installatiescript:
>>>>>
>>>>> ./configure --with-mysql --with-apache=../apache_1.3.27
>>>>> --enable-track-vars --with-gd-dir=../gd-2.0.12
>>>>> --with-jpeg-dir=../jpeg-6b --with-png-dir=../libpng-1.2.5
>>>>> --with-zlib-dir=../zlib-1.1.4 --with-xpm-dir=../xpm-3.4g
>>>>> --with-t1lib=../t1lib-5.0.0

> Dat install script is, zoals gezegd enkel om aan te geven dat ik in
> apache ondersteuning heb voor zowel mysql als php. PHP werkt gewoon
> binnen apache op de ingebouwde functies van mysql na dus. Dat had ik
> in mijn post gezet. De rest gaat goed.

Nogmaals: dat configure script van hierboven is van PHP en niet van
Apache (maar dat had je dus al door).

> In de phpinfo vind ik o.a dit:
>
> './configure' '--prefix=/usr' '--disable-static'
> '--with-apxs=/usr/sbin/apxs' '--enable-discard-path'
> '--with-config-file-path=/etc/apache' '--enable-safe-mode'
> '--with-openssl' '--enable-bcmath' '--with-bz2' '--with-pic'
> '--enable-calendar' '--enable-ctype' '--with-gdbm' '--with-db2'
> '--with-db3' '--with-imap-ssl=/tmp/pine4.53/imap/c-client'
> '--with-imap=/tmp/pine4.53/imap/c-client' '--enable-dbase'
> '--enable-ftp' '--with-gd' '--enable-gd-native-ttf'
> '--with-jpeg-dir=/usr' '--with-png' '--with-gmp'
> '--with-mysql=shared,/usr' '--with-xml=shared,/usr' '--with-mm=/usr'
^^^^^^^^^^^^^^^^^^^^^^^^
> '--enable-trans-sid' '--enable-shmop' '--enable-sockets'
> '--with-regex=php' '--enable-sysvsem' '--enable-sysvshm' '--enable-yp'
> '--enable-memory-limit' '--with-tsrm-pthreads' '--enable-shared'
> '--disable-debug' '--with-zlib=/usr'
>
> Dat moet dus goed zijn, daar zit het probleem denk ik ook niet in.

Maar dit komt niet overeen met de configure die je eerst poste. MAW je
draaid niet de php die je verwacht.

> Wat ik denk is een probleem in de koppeling mysql/php, maar hoe dat
> zit weet ik niet, aangezien het systeem wel aangeeft dat alles goed
> gecompileerd en ge-installeerd is.

mysql is als shared lib gecompileerd. Je dient dus in je php.ini een
regeltje als 'extension=mysql.so' te hebben staan. Deze mysql.so hoort
bij de PHP die je draaid en is dus niet bij de mysql installatie
(libmysqlclient.so).


--

Daniel Tryba

Johnny Bravo
10/07/03, 23:20
On Thu, 10 Jul 2003 08:52:45 GMT, weeb@frummel.com (W.G. de Roos)
wrote:



>
>Wat ik denk is een probleem in de koppeling mysql/php, maar hoe dat
>zit weet ik niet, aangezien het systeem wel aangeeft dat alles goed
>gecompileerd en ge-installeerd is.

Probeer deze eens:
http://www.vttoth.com/badmysql.htm

mvg
--
http://portal.kools-online.com
http://www.kools-online.com/4images
http://forum.kools-online.com

Hans
10/07/03, 23:35
On Thu, 10 Jul 2003 08:52:45 GMT, W.G. de Roos <weeb@frummel.com> wrote:
> On Thu, 10 Jul 2003 19:05:38 +0000 (UTC), Daniel Tryba
><news_nl.internet.www.server-side@canopus.nl> wrote:
>
> '--with-mysql=shared,/usr'

Als je zelf mysql gecompiled hebt zou ik het eens proberen met /usr/local.

Je krijgt trouwens een foutmelding als je het php configure script runt
en het kan de developement files niet vinden.

Groet,

Hans

--
http://spamikaze.nl.linux.org/

W.G. de Roos
14/07/03, 16:20
On Thu, 10 Jul 2003 21:30:02 +0000 (UTC), Hans
<nomailwanted@e35203.upc-e.chello.nl> wrote:

>On Thu, 10 Jul 2003 08:52:45 GMT, W.G. de Roos <weeb@frummel.com> wrote:
>> On Thu, 10 Jul 2003 19:05:38 +0000 (UTC), Daniel Tryba
>><news_nl.internet.www.server-side@canopus.nl> wrote:
>>
>> '--with-mysql=shared,/usr'
>
>Als je zelf mysql gecompiled hebt zou ik het eens proberen met /usr/local.
>
>Je krijgt trouwens een foutmelding als je het php configure script runt
>en het kan de developement files niet vinden.
>
>Groet,
>
>Hans
>
>--
> http://spamikaze.nl.linux.org/
>

Hoi mensen,

Bedankt voor de tips. Inmiddels werkt alles weer naar behoren en
zonder problemen (-:

Het was idd voldoende om even de volgende regeltjes toe te voegen
aan mijn php.ini:

extension=mysql.so
extension_dir = /usr/lib/php/extensions/

Dit dus uit de URL die Johnny meestuurde.

Bedankt dus.

Groetjes,

Wiebe