我正在使用PHP填充我的DataTables选择框。
如果我使用DataTables页面添加一个新条目(单击“添加”按钮),我对重音符(特殊字符)没有问题,但如果我使用phpMyAdmin页面(sql命令)添加新条目,则字段通过包含重音的phpMyAdmin页面添加的内容不会显示(json_encode为此字段返回null)。
这是行错误:
aDataInitial = '<?php echo json_encode($stack); ?>';'
我尝试使用utf8_encode,试图将mysqli charset声明为UTF8,我的MySQL字符集默认为UTF8。
为什么通过DataTable页面添加的条目显示正常,而phpMyAdmin添加的条目不是?
这是我的HTML / PHP代码:
<?php
$connection = ($GLOBALS["___mysqli_ston"] = mysqli_connect('localhost', 'mbrconsu_un394x', 'y1cz9,rd+hf6')) or die(((is_object($GLOBALS["___mysqli_ston"])) ? mysqli_error($GLOBALS["___mysqli_ston"]) : (($___mysqli_res = mysqli_connect_error()) ? $___mysqli_res : false)));
((bool)mysqli_query( $connection, "USE mbrconsu_mmx")) or die(((is_object($GLOBALS["___mysqli_ston"])) ? mysqli_error($GLOBALS["___mysqli_ston"]) : (($___mysqli_res = mysqli_connect_error()) ? $___mysqli_res : false)));
$aFieldType = array ('tema', 'vinculo', 'empresa', 'subcontratada', 'gerencia', 'areasolicitante', 'cc');
$stack=array();
foreach ($aFieldType as $type)
{
$sql="SELECT {$type} FROM treinamentos ORDER BY {$type} ASC";
$result = mysqli_query($GLOBALS["___mysqli_ston"], $sql);
while($row = mysqli_fetch_array($result))
{
$stack[$type][] = array($row[$type],$row[$type]);
}
}
?>
<script type="text/javascript">
aDataInitial = '<?php echo json_encode($stack); ?>';
</script>