10.4 Database issues
10 FAQ : Foire Aux Questions
Manuel PHP
.
I heard it's possible to access Microsoft SQL Server from PHP. How?
. Can I access Microsoft Access databases? .
I upgraded to PHP 4, and now mysql keeps telling me
"Warning: MySQL: Unable to save result set in ...". What's up?
->
PHP 5 no longer bundles .
After installing shared MySQL support, Apache dumps core as soon
as libphp4.so is loaded. Can this be fixed?
.
Why do I get an error that looks something like this:
"Warning: 0 is not a MySQL result index in <file>
on line <x>" or "Warning: Supplied argument is not
a valid MySQL result resource in <file> on line <x>?
|
10.4.4
PHP 5 no longer bundles
Yes. There will always be MySQL support in PHP of one kind or
another. The only change in PHP 5 is that we are no longer bundling
the client library itself. Some reasons in no particular order:
-
Most systems these days already have the client library installed.
-
Given the above, having multiple versions of the library can get
messy. For example, if you link mod_auth_mysql against one version
and PHP against another, and then enable both in Apache, you get a
nice fat crash. Also, the bundled library didn't always play well
with the installed server version. The most obvious symptom of this
being disagreement over where to find the mysql.socket unix domain
socket file.
-
Maintenance was somewhat lax and it was falling further and further
behind the released version.
-
Future versions of the library are under the GPL and thus we don't
have an upgrade path since we cannot bundle a GPL'ed library in a
BSD/Apache-style licensed project. A clean break in PHP 5 seemed
like the best option.
This won't actually affect that many people. UNIX users, at least the
ones who know what they are doing, tend to always build PHP against
their system's libmyqlclient library simply by doing --with-mysql=/usr
when building PHP. Windows users may enable the extension
php_mysql.dll
inside
php.ini
. Also, copy
libmySQL.dll
into the appropriate
%SYSTEMROOT%
directory, just like you do with every
other bundled DLL from the
dll
directory.
|