PHP UFT8编码Internet Explorer问题[重复]

问题描述 投票:1回答:1

这个问题在这里已有答案:

我面临以下问题:目前,我正在使用运行在Apache服务器上的PHP的Yii2框架创建一个Web应用程序。我的网络应用程序在Gooogle Chrome上完全正常运行,但在Internet Explorer上我遇到了问题,UTF8 econded turkish特殊字符在下拉菜单中不显示也不可读。一旦包含特殊字符的选择,菜单将保持为空。

我创建了动态下拉菜单,用于读取MySQL数据库表中的值。在此表中,列中的值以包含特殊字符的土耳其语保存,并且排序规则设置为utf-8。

PHP框架的标题字符集以及网页的元数据都设置为utf-8,但Internet Explorer似乎很难配合编码。

我的下拉菜单代码如下:

<div class="feedback-view">

 <?php $form = ActiveForm::begin(); ?>

  <p><?php

      $sql = 'SELECT * FROM tbl_feedback';
      $feedbacks = app\models\Feedback::findBySql($sql)->all();
      $list = yii\helpers\ArrayHelper::map($feedbacks, 'name', 'name');
      echo $form->field($model, 'name')->dropDownList($list,   [
                                     'style'=>'width:300px',
                                     'prompt'=>'--Name select--',
                                     'class' => 'form-field',
                                     'onchange'=>'$.get("'.Yii::$app-
  >request->baseUrl.'" + "/index.php?r=feedback/test&name=" + $(this).val(),
                                                       function(data){

 $("#feedback_id").html(data);

                                                       }
                                        );'
                                      ]);

      ?>
      <input type="submit" value="submit">
    </p>
<?php ActiveForm::end(); ?>

任何提示或建议/提示都将受到高度赞赏,因为我真的遇到了这个问题。先感谢您。

php mysql google-chrome internet-explorer
1个回答
0
投票

解决方案是使用http://php.net/manual/de/book.mysqli.php这个包并格式化utf8。在我使用为SQL设计的不同包之前,这对于包含特殊字母的字符编码不起作用。

© www.soinside.com 2019 - 2024. All rights reserved.