Мое приложение IOS должно отправлять / получать некоторые данные через некоторые страницы PHP. Это пример вызова с использованием i STHTTPRequest:
__block STHTTPRequest *up = [STHTTPRequest requestWithURLString:[NSString stringWithFormat:@"%@%@",PATHSERVER,@"retrivedata.php"]];
up.encodePOSTDictionary=NO;
up.postDataEncoding=NSUTF8StringEncoding;
up.POSTDictionary = @{@"name":@"Name", @"surname":@"Surname"};
Все в порядке, пока я не решу вставить что-то вроде:
up.POSTDictionary = @{@"name":@"Na&me", @"surname":@"Surname"};
Таким образом,
print_r($_POST);
в retrivedata.php приводит к:
Array
(
[name] => Na
[surname] => Surname
)
Название вырезано на «&»char index. Я безуспешно пытался что-то вроде:
utf8_encode/utf8_decode($name)
Кажется, что имя возвращается к retrivedata.php уже вырезано, поэтому я не могу использовать любое преобразование / кодирование символов … В моем STHTTPRequest я уже пытался установить:
up.encodePOSTDictionary=YES;
С этой настройкой я могу отправить&»как $ amp; но если я сделаю SELECT для получения значения, я не смогу преобразовать его в обычную строку
html_entity_decode();
это все еще остается
&
Как я могу сделать? Мой STHTTPЗапрос отправить ‘Na&меня », но он пустым для $ _POST [] в retrivepage.php
Я не очень знаком с shttprequest, но вы должны URL кодировать его. Это будет выглядеть «На% 26me» когда URL закодирован. Позже в посте у вас будет «Na&мне»
Надеюсь, поможет 🙂
Других решений пока нет …