j'utilise un service web avec une DB en utf-8:
$posts = array();
if(mysql_num_rows($result)) {
while($post = mysql_fetch_assoc($result)) {
$posts[] = array('post'=>array_map('utf8_encode',$post));
}
}
if($format == 'json') {
header('Content-type: application/json');
echo json_encode(array('posts'=>$posts));
}
else {
header('Content-type: text/xml');
echo '<posts>';
foreach($posts as $index => $post) {
if(is_array($post)) {
foreach($post as $key => $value) {
echo '<',$key,'>';
if(is_array($value)) {
foreach($value as $tag => $val) {
echo '<',$tag,'>',($val),'</',$tag,'>';
}
}
echo '</',$key,'>';
}
}
}
echo '</posts>';
}
si je fait : http://localhost/webservice/web-service ... er=1&num=3j'obtient un xml correct : (avec accent)
Code : Tout sélectionner
<posts>
−
<post>
<post_title>A propos à jour</post_title>
<guid>http://localhost/wordpress/?page_id=2</guid>
</post>
−
<post>
<post_title>Bonjour tout le monde!</post_title>
<guid>http://localhost/wordpress/?p=1</guid>
</post>
</posts>1) dans FF cela fonctionne pas il me demande si je veux télécharger le fichier .php
2) dans G-chrome il parse mais:
Code : Tout sélectionner
{"posts":[{"post":{"post_title":"A propos \u00e0 jour","guid":"http:\/\/localhost\/wordpress\/?page_id=2"}},{"post":{"post_title":"Bonjour tout le monde!","guid":"http:\/\/localhost\/wordpress\/?p=1"}}]}J'utilise MAMP sous OSX php 5.3
J'ai essayé pas mal de chose avec encode, decode... mais là je suis dans la louse
Merci