I've Googled around and can't figure this one out from the hours of reading I've already done.
MySQL 5.1.45 is running on Windows NT (WWS3 5.2 build 3790) with PHP Version 5.2.14. There I have a table with a column named 'action' of type varchar and length 300. The relevant table is of type MyISAM, encoding cp1252 West European (latin1), collation latin1_swedish_ci. My PHP/HTML files are the normal UTF-8 encoding.
Through my MySQL client I can insert a 299-character string into this column with no problem. My php app inserts a 200-character string into this column with no problem but a 201-character string generates the following error: "Data too long for column 'in_ACTION' at row 1". I don't know where the "in_" in "in_ACTION" comes from but it's not like it's being added by my php app conditioned on string length so I'm assuming that's not the problem. Additionally, I realize that the capacity of a varchar could be less than what has been specified for it if the total row being inserted is more than 65,535 bytes but that is definitely not the case here. I also hit the same 200 vs. 201 barrier when the column is set to text or blob datatype.
Anyone have any idea what could be causing this? Thanks so very much!