Fatal error: Class 'MongoClient' not found - php

I want to connect to MongoDB from PHP but I keep getting the fatal error in the title. My PHP version is 5.5.14, architecture x86, thread safety enabled, VC11.
So I downloaded 5.5 Thread Safe (TS) x86 from PECL, extracted php_mongo.dll to the \ext\ folder of my php installation, added extension=php_mongo.dll to the php.ini file, and restarted Apache.
I keep getting the same fatal error when I use either Mongo() and MongoClient().
Also, I can access mongo from CMD, starting it with mongod and then opening another cmd window to handle the database using mongo. I installed PHP and Apache separately (No XAMPP or WAMP) on Windows 8.1 x64.
Installation folders:
Apache: C:\Apache24
PHP: C:\php
MongoDB: C:\Program Files\MongoDB

In the lastest version, you can use new MongoDB\Driver\Manager() to create the obj instead of the MongoClient().

Related

Datastax Cassandra PHP extension in WAMP

I am using WAMP with php v5.5.12.
Trying to install datastax php driver(https://github.com/datastax/php-driver).
1. I take the compiled dll file from here and put it in /ext folder
2. Add the extention=php_cassandra.dll to php.ini
3. Restarting WAMP server
I get this error in wamp php error log:
[28-Jan-2016 07:32:57 UTC] PHP Warning: PHP Startup: Unable to load dynamic library 'c:/wamp/bin/php/php5.5.12/ext/php_cassandra.dll' - The specified module could not be found.
Also installed Pear package, but there are no changes.
Does anyone here experience with cassandra new driver on windows?
What can be the problem?
I could not either make the .dll found on the pecl php site work. Same error.
But the .dll found here works!
http://downloads.datastax.com/php-driver/windows/cassandra/
You will need to use the Thread Safe version (TS) and of course the one for PHP5.5. Also you need to use the x86 if you WAMPServer is the 32 bit and the x64 if WAMPServer is the 64bit version
That dll should be place into the \wamp\bin\php\php5.5.12\ext folder

Issue Running Imagick module (PHP 5.3.5, WAMP server 2.1e)

I have installed Wamp server 2.1e-32bit and ImageMagick-6.8.9-7-Q16-x86-dll in Windows Server 2008 R2-x64. After completed my installation process and run wamp server, i get a error message and Imagick not working
The error msg is:
"PHP Warning: PHP Startup: imagick: Unable to initialize module
Module compiled with build ID=API20090626,TS,VC9
PHP compiled with build ID=API20090626,TS,VC6
These options need to match in Unknown on line 0"
How to resolve the problem?
Try the 64-bit DLL since you are running on Windows Server 2008 R2-x64 as recommended by the doc.
UPDATE:
If you don't already have the php_imagick.dll extension, you can download it from here. In your case, you will pick the php 5.3 Thread Safe (TS) x86 version. The caveat here is I am unsure if this will work with the latest imagemagick Q16 DLL.
Copy the php_imagick.dll file to your PHP ext folder, and update your php.ini to include extension=php_imagick.dll. Then restart your WAMP server.
Run phpinfo() to ensure the imagick library is loaded properly.

MongoDB - Wampserver : Class 'Mongo' not found

I am trying to install MongoDb on windows platform. I'm using PHP with WampServer.
But while executing the PHP program it gives the following error:
Fatal error: Class 'Mongo' not found in C:\wamp\www\test\index.php on line 19
So is there any way to check whether MongoDB is running with PHP or not ?
Please check php loaded extensions using phpinfo() function whether mongoDB extension is loaded or not.
Do check these as well.
Fatal Error - 'Mongo' class not found
Fatal error: Class 'Mongo' not found in xampp
Add the following line to your php.ini file:
extension=php_mongo.dll
Docs Link: http://php.net/manual/en/mongo.installation.php
Check this possible solution
Copy c:\wamp\bin\php\php-5.3.x\ext\
Edit c:\wamp\bin\apache\Apache2.2.xx\bin\php.ini and add the line where the extensions are loaded.
Why run WAMP on 32bit Windows 7 64bit?
The Mongo PHP driver does not have a 64bit binary win32, if you are running the 64bit version of WAMP, PHP will refuse to load the 32-bit version of php_mongo.dll.

PHP CURL not loading in WAMP after upgrading PHP from 5.3.4 to 5.3.22

I have the exact same issue as PHP cURL not working - WAMP on Windows 7 64 bit
CURL doesn't load at Apache restart, with message: "PHP Startup: Unable to load dynamic library 'c:/wamp/bin/php/php5.3.22/ext/php_curl.dll' - The operating system cannot run %1.\r\n in Unknown on line 0"
Except that I am not installing 5.3.13 as in the other thread but I am attempting to upgrade PHP in an existing WAMP installation from 5.3.4 to 5.3.22, both x64 VC9 TS on a Win 2008R2 64 bits, running Apache 2.2.4 x64.
I did the following steps:
stopped Apache
unzip php5.3.22 in /wamp/bin/php5.3.22;
updated php.ini, httpd.conf and the 2 Wamp config files to point to the new PHP version;
updated php5ts.dll and php5isapi.dll in Apache\bin with the new ones
updated Windows PATH to point to php5.3.22 folder instead of php5.3.4
restarted Apache -> CURL load error message
I could try most of the answers provided in other threads except the one from Matthieu:
Go to http://www.anindya.com/php-5-4-3-and-php-5-3-13-x64-64-bit-for-windows/ and download the curl version that corresponds to your php version under "Fixed curl extensions:".
...as there is no "Fixed curl extension" for 5.3.22 in Anindya's site.
Does anyone know if there is need or not for a "fixed curl lib" after 5.3.13? and where I can find it?
Either there are some typos in your question or you have done a few things wrong.
The new PHP should have gone into \wamp\bin\php\php5.3.22
updated php5ts.dll and php5isapi.dll in Apache\bin with the new ones This is done by Switching versions in WAMP, you dont do it manually
updated Windows PATH to point to php5.3.22 folder instead of php5.3.4 There is no need to put PHP on the PATH, in fact it reduces the ability of WAMPServer to switch between various versions of PHP.
Have a look at this it may help How to install a version of PHP into an existing WAMP install

PHP loading extensions error

I'm trying to get PHP to load some extensions (sqlsrv driver for PHP PDO).
I'm using a wamp server, With PHP 5.4, Apache 2.4.4.
In my PHP.ini file, i've entered the following line:
extension_dir = C:\wamp\bin\php\php5.4.16\ext
...
extension=php_pdo_sqlsrv_54.nts.dll
However in the apache error log, whenever I restart the apache service, I get the error message:
PHP Warning: PHP Startup: Unable to load dynamic library 'c:/wamp/bin/php/php5.4.16/ext/php_pdo_sqlsrv_54_nts.dll' - The specified module could not be found.\r\n in Unknown on line 0
Now, I know for a fact, this error is incorrect. If I copy the file location directly from the error log, (C:\wamp\bin\php\php5.4.16\ext\php_pdo_sqlsrv_54_nts.dll) and paste it into windows explorer, it finds the file fine.
I've added the ext directory to windows PATH environment variable, still no success.
Any ideas what to try next?
Thanks
Your problem is that you are trying to run a NTS 'Not Thread Safe' dll with a PHP that is 'Thread Safe', so initially try downloading the Thread Safe version of the sqlsrv DLL.
BIG NOTE and possibly your next problems solution:
As far as I know the sqlserver database interface dlls are only available as 32bit. So if you have installed the 64bit WAMPServer you will have to uninstall and install the 32bit WAMPServer.

Categories