I am trying to make a simple journalview app for iPhone using a mysql DB. I am using php to connect to the db and encode the data to json. I am using a very simple db with 3 columns:
- id
- subject
- message
When I select the id and subject from the table, the JSON data is displayed correctly. When I select everything or I select the message alone, I only see a white screen. The message column is of datatype text and should be able to have strange signs (/,\,¨,$,%, spaces, lines,...) The only way I can get the message data to display is by doing the following in my connection file:
while($r = mysql_fetch_assoc($resultset))
{
//$r = preg_replace("!?
!", " ",$r);
$r= json_encode($r);
$records[] = $r;
}
//Output the data as JSON
echo json_encode($records);
}
}
However, the data that is returned is full of backslashes, , and does not seem like valid json:
[{"id":"248","subject":"General","message":"Dear Diary
This is a test.
Does it work or not?!
Goodbye.
D"},{"id":"249","subject":"General","message":"Hi
This is Test number 2.
Does it Work?
\/\/ goodbye \\\\"}]
If i empty my message column and put in normal text without special signs it works fine, so I'm guessing that is the issue. I would be better however if a message could contain special characters and backslashes, is this possible or not?