ID:               42613
 User updated by:  patrick at baynewmedia dot com
 Reported By:      patrick at baynewmedia dot com
 Status:           Assigned
 Bug Type:         *General Issues
 Operating System: Windows XP Pro & Windows Vista
 PHP Version:      5.2.4
 Assigned To:      jmertic
 New Comment:

...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.


Previous Comments:
------------------------------------------------------------------------

[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.

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

[2007-11-05 12:39:12] [EMAIL PROTECTED]

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.

You also don't need to add anything to the php.ini; the installer
enables the extension automatically. Furthermore, the line you added was
incorrect; it should have been:

extension=php_mysqli.dll
-or-
extension=php_mysql.dll


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

[2007-11-02 18:22:10] patrick at baynewmedia dot com

Okay, so I've cleaned up the php installation on my computer. I did a
full search through my entire system for the existence of "php.ini" just
to ensure that nothing was being left behind. I downloaded the Windows
installer from
http://ca3.php.net/get/php-5.2.4-win32-installer.msi/from/ca.php.net/mirror
and installed it. The default installation has all extensions disabled.
Maybe, I think, I'm being an idiot or losing my mind, so I pull up a
previous package I'd downloaded of 5.2.4. In that one, extensions are
all enabled! Is it possible that some mirrors are getting different
info? I'm using the Canadian one above and that's where I download all
my ZIPs/Installers from. But whatever, looks okay, and now it mimics the
torn-down installation I had previously where I disabled all the "bad"
DLLs.

However, the libmysql.dll file is nowhere to be found so...I grabbed
the ZIP package from
http://ca3.php.net/get/php-5.2.4-Win32.zip/from/ca.php.net/mirror
copied it (the DLL) to the installation directory I added the extension
directive in the php.ini file:
extension=php_libmysql.dll
(the extension_dir is still "./" -- the default value). Restart my web
server (just to be sure)...and...nothing. "libmysql" (or anything
mentioning mysql) appears nowhere on the phpinfo page. I checked my
MySQL installation...ran the administration tool and it's up and
running. Maybe, I'm thinking, it's because I'm running it on a 64-bit
system so (drivers being not quite up to speed yet), I download the
32-bit version so everything runs virtualized. The 64-bit version gone
and the 32-bit version running, I try it again. Result: no change. The
libmysql.dll file is doing nothing. 

No go. Step 2: Re-install with MySQL (mysqli to be exact-for MySQL 5.0)
support enabled. The INI file is exactly the same as when I updated it
by hand (extension=php_mysqli.dll). The extension now shows up in the
list (so...why was my INI file not being read...even if there was an
error, wouldn't this have been mentioned?). I run my simple PHP script
to connect to the database and it chucks out an error saying that the
MySQL extension isn't loaded. Okay...re-install with *both* mysql and
mysqli enabled. Great. Now it's asking me for the multibyte string
extension. I add it to the PHP INI file from my ZIP and, *sigh*, not
there.

Well, this is light years ahead of where I was a month ago so I have to
say thanks for at least getting me this far. I was really going to give
up. But you can see how I'm slowly sliding down the same slope again.
The PHP.INI file, for some reason, is not being recognized. Or at least,
the changes I added are not being read. The MySQLi extension for MySQL5
does not appear to be the only one required (not sure if it's needed at
all...or what the reason behind this is). 

The thing that keeps bothering me is that I've done this many times
before. These extensions, at least, I'm familiar with and have updated
many times. So when I started running into these problems with the
current installer, it made me call into question what core changes have
been made. I've always had all extensions enabled, and just assumed
everything I would ever need would be there (including any MySQL
stuff)...and it was! It seems now that installations must be exclusive,
rather than inclusive (okay, as long as everyone understands that), and
the problem with the INI file is really beyond me. So...I'm closer...but
still can't get MySQL running fully. I suppose I could disable Multibyte
String support but I would prefer not to as I'm using it in some of my
sequel statements. Being able to load it would likely solve the problem.

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

[2007-11-02 17:13:23] patrick at baynewmedia dot com

Okay. I will try this and get back to you. However, I have re-installed
PHP about 20 times now and the result has been the same so I'm not
overly optimistic.

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

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
    http://bugs.php.net/42613

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

Reply via email to