phpmysqlmysql-real-escape-string

problem with inserting a forward slash in mysql table


I got problem inserting the string "AM/PM" to my mySQL table

$timeFormat = mysql_real_escape_string($_POST['timeFormat']);

$sql="
UPDATE profiles
SET firstName = '$firstName', lastName = '$lastName', language = '$language', timeFormat = '$timeFormat'
WHERE profileId = '$profileId'
";
mysql_query($sql) or die('Error: '.mysql_error());

There is no error, but the table is only showing AM/ ??

Edit:

When I echo the $sql I get:

UPDATE profiles SET firstName = 'Johan', lastName = 'Lund', language = 'English', timeFormat = 'AM/PM' WHERE profileId = '27'

And, yes I have searched the web in a very long time before asking this question. Probably if you have any link from Stackoverflow. I have already overlooked it.


Solution

  • Check your datatype in the database If it's Varchar(3) then MySQL is truncating your data.