2010-09-12 5 views
0

Я полный mySQL & PHP noob, а в моей таблице всякий раз, когда есть апостроф, он заменяется на. Я искал и обнаружил, что это может быть потому, что моя таблица не UTF-8, но я изменил все настройки сортировки в phpMyAdmin на utf8_unicode_ci, и я все еще получаю «.Апостроф заменен на таблицу mySQL

Чтобы быть ясным, я отправляю данные в PHP-скрипт из iPhone-приложения, используя NSURLConnection. В URL-адресе он загружается, апостроф заменяется% E2% 80% 99. Мой сервер работает под управлением Linux.

Спасибо за помощь!

+0

Другие советы: [PHP UTF-8 cheatsheet] (http://developer.loftdigital.com/blog/php-utf-8-cheatsheet). – BalusC

ответ

3

Вы должны сделать запрос перед хранением данных:

SET NAMES utf8.

Видимо это mysql_set_charset('utf8',$conn) в 5.2+

+0

Справа. Я буду поддерживать, если вы упомянете о функции PHP для этого. Использование запроса 'SET NAMES' считается устаревшим в мире PHP :) – BalusC

+0

Мех, я никогда не отставал от php. Это редактирование? : p –

+0

Это сработало. Спасибо за быстрый ответ! –

0

Апостроф получает urlencoded. Вам придется декодировать его с помощью urldecode на стороне php, а затем поместить его в базу данных.

+0

PHP по умолчанию уже расшифрует его. – BalusC

Смежные вопросы