Reputation: 784
For days I have been trying to install easyphp deveserver 17 which I have used for many years but whenever I install it, I can not access mysqli or phpMyAdmin. I get the following error
The mysqli extension is missing. Please check your PHP configuration. See our documentation for more information.
When I follow the documentation it shows
; Directory in which the loadable extensions (modules) reside.
extension_dir = "C:/Apache2/modules/php/ext"
The php.ini can be loaded from several locations (especially on Windows), so please check you’re updating the correct one. If using Apache, you can tell it to use specific path for this file using PHPIniDir directive:
LoadFile "C:/php/php5ts.dll"
LoadModule php5_module "C:/php/php5apache2_2.dll"
<IfModule php5_module>
PHPIniDir "C:/PHP"
<Location>
AddType text/html .php
AddHandler application/x-httpd-php .php
</Location>
</IfModule>
I have tried many times yet I still get the same thing meanwhile Laragon server and Server2go work fine on my system and I can access their database not only when they are running separetly but even when they are running at the same time. But for Easyphp where I have many years of database stored, I can't access the database or phpMyAdmin due to phpMyAdmin - Error
The mysqli extension is missing. Please check your PHP configuration. See our documentation for more information.
I have searched the net, asked chatgpt, unistall easyphp, reinstalled easyphp in a different folder... same result and all these are happening even Without UPGRADING the PHP version. When I upgraded the PHP version also same ting.
I have checked phpinfo, edited php.ini file, even did a system restore hoping it may have been a drivers competing with the port 3306 of mysqli, tried to change the port from 3306 to 3307 to no avail... read some post on Stack Overflow... I reversed it to port 3306 and upgraded to PHP 8.3 and still nothing. Here is a screenshot of my phpinfo. I noticed in it
Configuration File (php.ini) Path no value Loaded Configuration File D:\000_WORK\EasyPHP-Devserver-17\eds-binaries\php\php833vs16x86x250213064440\php.ini
extension_dir D:extension_dir = D:extension_dir D:extension_dir = D:extension_dir
MySQLi Zak Greant, Georg Richter, Andrey Hristov, Ulf Wendel
and in php.ini I have extension=mysqli
in my php.ini I have noticed something weird, a duplicate of line
extension_dir = "D:extension_dir = "D:extension_dir = "ext"
0_WORK\EasyPHP-Devserver-17\eds-binaries\php\php833vs16x86x250213064440\ext"
0_WORK\EasyPHP-Devserver-17\eds-binaries\php\php833vs16x86x250213064440\ext"
however everytime I changed or corrected it to
extension_dir = "D:\000_WORK\EasyPHP-Devserver-17\eds-binaries\php\php833vs16x86x250213064440\ext"
as soon as I restart the server it reverts back to that value until I set the file to read-only.
Upvotes: 0
Views: 53
Reputation: 784
The solution was to 1 - download easyphp sever 32 bit and apache2443vc15x86x250213064314 2 - PHP 8 from easyphp 32 bit
edit the PHP.ini file in the PHP 8 server and set the URL
extension_dir = "D:\000_WORK\EasyPHP-Devserver-17\eds-binaries\php\php833vs16x86x250213064440\ext"
3 - make the PHP read only so it does not get modified afterwards
4 - somehow go to the server folder of the database used and launch every single exe file that is in there as an administrator and then restart the machine.
Upvotes: 0