Edit report at https://bugs.php.net/bug.php?id=42613&edit=1

 ID:                 42613
 Comment by:         cedricipkiss at gmail dot com
 Reported by:        patrick at baynewmedia dot com
 Summary:            Unable to load Dynamic Link Libraries - installer
                     buggy
 Status:             Closed
 Type:               Bug
 Package:            Windows Installer
 Operating System:   Windows XP Pro & Windows Vista
 PHP Version:        5.2.4
 Assigned To:        jmertic
 Block user comment: N
 Private report:     N

 New Comment:

Some of the extensions require libmysql. you should make sure libmysql.dll is 
installed on your computer, you can look for it under C:\Windows\System32. This 
is 
specified in the php manual ( 
http://php.net/manual/en/install.windows.extensions.php). You can download 
libmysql.dll at http://www.dll-files.com/dllindex/dll-files.shtml?libmysql. 
This 
bug took me quite some time to solve. Hope it helps.


Previous Comments:
------------------------------------------------------------------------
[2007-11-13 17:40:02] patrick at baynewmedia dot com

"Just to clarify again, you don't need to manually adjust the php.ini
file; the installer handles that for you."

I got that, but that's simply not always the case. I appreciate what you're 
saying but the problem is that, while there are claims that the extensions 
*should* work, they don't. I say they don't, and the answer continues to be 
that they *should*. So, erm, how does this resolve the problem again?

"I bet your script is referencing the mysql_* functions, which require
the the mysql extension. Since you are working with MySQL 5, I'd
recommend moving to the mysqli_* functions; they are mostly identical,
but support some of the newer MySQL 4.1+ features."

Actually no, I was the "mysqli_" functions (well, at least I was initially). I 
like using the latest and greatest and this seemed to be the way to go. But 
like I said, the mysqli extension simply doesn't work. So I had to downgrade to 
mysql to get it running. Again, the problem is not really entirely solved.

"If you need multibyte support, enable the Multi-Byte String (mbstring)
extension."

Okay...not included by default with the MySQL extension so I have to edit the 
PHP.INI file. Granted it's optional but clearly your first suggestion to not 
update the INI file really implies that your web server will only ever do one 
thing, and that any time you want to do something else you need to re-install 
it. If not, you should be able to install all the extensions you *think* you 
may ever need...and we're right back to step 1!!!

"Any changes to the php.ini file require a restart to the web server."

...right. If I failed to omit this anywhere it's just because it was getting 
tedious constantly repeating myself. But yes, I restart my we server each and 
every time.

"I'm marking this closed since it sounds like there isn't a PHP error
here, mainly a user configuration error."

Okay, so here's the thing. If I install PHP, I only install exactly what I need 
at that exact moment, correct? If need anything else, I 

a) shouldn't touch the INI file because the installer did it for me (so I'm 
stuck),
b) Update the INI file by hand and risk enabling a faulty extension (right back 
to the very top of this problem), 
c) Re-install PHP and enable the extensions I need now. 

Besides that, it still doesn't answer the fundamental question and 
problem....if I want functionality "A", which extensions should I be planning 
to install way ahead of time to ensure that I can use it. Furthermore, why do a 
number of the extensions fail? The basic questions that this whole thing 
started with haven't been answered or addressed in any way. The bug summary 
"Unable to load Dynamic Link Libraries - installer buggy" has pretty much been 
ignored. Maybe it's not an installer issue but we've managed to get so far off 
topic...trying to get one precise installation going...that the original 
problem has been forgotten. I'm glad I can partially use MySQL, don't get me 
wrong, but how has the original bug been fixed?

------------------------------------------------------------------------
[2007-11-12 12:56:22] jmer...@php.net

Just to clarify again, you don't need to manually adjust the php.ini file; the 
installer handles that for you.

I bet your script is referencing the mysql_* functions, which require the the 
mysql extension. Since you are working with MySQL 5, I'd recommend moving to 
the mysqli_* functions; they are mostly identical, but support some of the 
newer MySQL 4.1+ features.

If you need multibyte support, enable the Multi-Byte String (mbstring) 
extension.

Any changes to the php.ini file require a restart to the web server.

I'm marking this closed since it sounds like there isn't a PHP error here, 
mainly a user configuration error.

------------------------------------------------------------------------
[2007-11-05 16:04:44] patrick at baynewmedia dot com

...oh, regarding the mispelling issue; yes, I had initially misspelled the 
extension names, a few times. First time I'd forgotten the "php_" at the front, 
the next time it was something else. I'll be the first to admit that that's 
just dumb on my part, but it's worthwhile to point out that no errors were 
reported. I mean 0 errors. The extensions, justifiably, didn't show up on the 
info page, but neither did any sort of error reports that the DLL mentioned 
doesn't exist (or something to that effect). Furthermore, I did finally fix my 
spelling but the result is still the same. If I make alterations by hand, the 
info page simply doesn't reflect this. I even tried copying the INI file that 
was created with the successful MySQL/i installation (where I enabled it in the 
installer). When I tried this again by hand on my XP machine...just open up the 
existing INI and dump the contents of the working one in there...no changes! 
The phpinfo page does not show any MySQL instances anywhere. If I uninstall and 
re-install with the extensions enabled, however, they're there! And the INI 
files are, byte for byte, exactly the same.

------------------------------------------------------------------------
[2007-11-05 15:51:21] patrick at baynewmedia dot com

*However*, the MySQLi extension didn't work (I'm running PHP5) ... should've 
read:

*However*, the MySQLi extension didn't work (I'm running MySQL 5)

------------------------------------------------------------------------
[2007-11-05 15:50:12] patrick at baynewmedia dot com

"Make sure that you enabled the mysqli extension ( or mysql if you are
connecting to a pre-4.1 server ) in the installation. I have done this
myself and libmysql.dll shows up in the installation directory."

I did this initially by hand. I added the "extension" directive into the 
PHP.INI file when installing with no extensions. However, the extension failed 
to show up when running php_info(). There was no error to suggest it was 
missing or misspelled. Simply, nothing. The only way I could run the MySQL 
extension was to specify it when running the installer. *However*, the MySQLi 
extension didn't work (I'm running PHP5). When I tried to run any simple 
scripts, I was simply told that the MySQL extension wasn't loaded (no mention 
of mysqli). So I installed again with both extensions enabled and the scripts 
now worked, except that they warn that the multibyte string extension should 
also be present. 

To sum up:
1. Installing the extensions by hand had no--I repeat--no effect. there were no 
errors or messages indicating that something was wrong, the extensions simply 
didn't show up.

2. Installing with mysqli only doesn't work. I keep getting asked for the mysql 
extension instead. I am 100% certain I'm running MySQL 5.

3. Re-installing with both mysqli and mysql allows me to finally connect *but* 
I get "missing multibyte string" extension.

------------------------------------------------------------------------


The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at

    https://bugs.php.net/bug.php?id=42613


-- 
Edit this bug report at https://bugs.php.net/bug.php?id=42613&edit=1

Reply via email to