0

我正在使用此代码从 php 页面获取一些 html 内容:

$.ajax({
   url:server+'/getMessage/40',
   cache: false,
   success: function(res) {
       var text = res.responseText;
       $('#result').html(res);
    }
});

文本从数据库中检索。

php 文件如下所示:

$app->get('/app/get/getMessage/:Id',function ($Id='') use ($app) {
$msgElements = 'Title,Body';
$msgFe = $conn->query("SELECT $msgElements FROM messages WHERE Id='".$Id."'");
    $fields = explode(',',$msgElements);
    while($msgData = $conn->extract($msgFe)){
        foreach($fields as $field) {
            $arr->$field = $msgData->$field;
        }
    }
    $ele=' <div class="modal-header">
                <h1>'.$arr->Title.'</hi>
            </div>
            <div class="modal-body">
                '.$arr->Body.'
            </div>
            <div class="modal-footer">
            </div>
            ';
    echo $ele;
});

如果我将浏览器放置在 php 页面的位置,并使用正确的GET说明,我会毫无问题地得到文本。但是,如果我使用上述 ajax 函数检索文本,它会显示?...

从我的测试(以及这里的其他线程)我假设问题依赖于ajax函数的某个地方......有什么帮助吗?

PS 我注意到,如果我尝试json_encode()在包含未正确可视化的字符的文本上使用,结果是null. 我希望我有帮助!

4

1 回答 1

0

您必须utf8_encode()从数据库中获取值,因为结果值不是您所说的 utf8 编码。

于 2012-12-06T15:02:26.650 回答