I am having a weird problem and have hit a road block.
Background:
I am working with MSSQL database.
The table that I am querying has a "TIMESTAMP" field.
Problem:
When I try to output the data retrieved from this column, I get weird output.
For example, suppose I have the following data saved in the field: 0x000000000ADDAB2F
PHP will output it as: ������
Perhaps it is happening because PHP is trying to convert this string to a number or something.
What I want to do is output the string "AS IS" (i.e I dont want PHP to process it at all, just output the raw data).
I am unable to find a solution that will stop PHP from processing this data.
I am using mssql_* functions to query the data.
What I have tried
As I dont even have a clue of why is it happening at all, I tried to implement whatever I could find on the Google. So far I have tried to convert the number back to its original form.
So I have used utf8_decode
, mb_encode_numericentity
, mb_decode_numericentity
, base_convert
, unpack
and dechex
None of them do what I am trying to do.
If you are going to suggest converting the TIMESTAMP value to NVARCHAR or something in the SQL Query itself, then please note that this is not possible.
Because I am creating a simple generic query form, where a user will type MSSQL queries in a textarea and will get the results returned in the browser.
So he can type SELECT * FROM table and he should get all columns in the output.
So it is not possible to fix the problem in the query itself, I have to do it in PHP itself.
Any help?