I've been working on a content managed site that's been working fine on localhost. I've just uploaded the files to my mediatemple server.. and am seeing some pretty interesting results:
Warning: mysqli_stmt::bind_result() [mysqli-stmt.bind-result]: Server returned unknown type 246. Probably your client library is incompatible with the server version you use!
Has anyone ever seen anything like this before. I'm completely stumped! Works great on localhost (MAMP), but breaks on the live server :-(.
Thanks a lot!
In MySQL 5.0.3, a new field type was introduced, to support fixed-point math with more accuracy. This new field type is identified in the MySQL protocol with a numeric value 246.
If you have a MySQL server running 5.0.x or higher, and you use the
NUMERIC
orDECIMAL
, it's incompatible with theDECIMAL
field type used in the MySQL 4.x client.http://dev.mysql.com/doc/refman/5.0/en/upgrading-from-previous-series.html says:
Also see http://bugs.php.net/bug.php?id=35536
You should be able to resolve this issue by upgrading your MySQL client library in PHP. Either rebuild PHP, or else just drop in a new MySQL client binary.
Best of all would be to use the newer mysqlnd library, which gives you a lot of benefits to performance and functionality. That library is included in the source distribution of PHP 5.3 and later. It states in the FAQ that it requires PHP 5.3, which actually surprises me, but that's what they say.
It should be a MySQL version problem.
This is what I found in another forum:
Obviously you probably have different folder names, but I hope you get the idea.
Change your DECIMAL type to FLOAT in the database until it's supported.