Php 通过jQuery向数据库发送阿拉伯文数据

Php 通过jQuery向数据库发送阿拉伯文数据,php,jquery,Php,Jquery,我有一个名为“rep”的文本框,它使用jQuery将阿拉伯语数据发送到PHP文件。问题是数据库编码是拉丁文1\u瑞典语ci,而不是UTF8,我无法更改它,因为它会导致查看以前的数据时出现问题 这是我的密码: <SCRIPT LANGUAGE="JavaScript"> $(function() { $("input[name='rep']").each(function(i) { $(this).change(function($mainElement) {

我有一个名为“rep”的文本框,它使用jQuery将阿拉伯语数据发送到PHP文件。问题是数据库编码是拉丁文1\u瑞典语ci,而不是UTF8,我无法更改它,因为它会导致查看以前的数据时出现问题

这是我的密码:

<SCRIPT LANGUAGE="JavaScript">
$(function() {
$("input[name='rep']").each(function(i) {
    $(this).change(function($mainElement) {
            var rep_name = $(this).val();
            var item_id = $(this).attr('id');
var request = $.ajax({
  method: "POST",
  url: "inc/rep.php",
  data: { rep: rep_name, id: item_id }
});
request.done(function( msg ) {
                $('#dd').html(msg);
  });
        });
    });
});
</SCRIPT>

$(函数(){
$(“输入[name='rep']”)。每个(函数(i){
$(此).change(函数($main元素){
var rep_name=$(this.val();
var item_id=$(this.attr('id');
var请求=$.ajax({
方法:“张贴”,
url:“inc/rep.php”,
数据:{rep:rep_name,id:item_id}
});
request.done(函数(msg){
$('#dd').html(msg);
});
});
});
});
这是我的PHP文件:

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-15" />
<?php
include "config.php";

if($_POST["rep"]){
$rep = $_POST["rep"];
$id = $_POST["id"];
$mysqltable="items";

    $q = mysql_query("UPDATE " . $mysqltable . " SET rep='".$rep."' WHERE id=".$id);
(".$id.",'".$rep."')");

    echo ($q)? "done ".$_POST["rep"] : 'failed';

}


唯一适合我的方法是将这两行代码添加到我的php文件中,并将mysql中的表转换为utf8\U unicode\U ci:

mysqli_集_字符集($conn_i,“utf8”);

mb_内部_编码(“UTF-8”)

唯一适合我的方法是将这两行代码添加到我的php文件中,并将mysql中的表转换为utf8\U unicode\U ci:

mysqli_集_字符集($conn_i,“utf8”);

mb_内部_编码(“UTF-8”)

latin1\u swedish\u ci
是排序规则,而不是编码。但是,如果不更改db的编码,您将无法存储
latin1
中不存在的字符,因为它是欧洲字符集,而不是阿拉伯语:。我能想到的唯一解决方案是将数据编码为base64(例如),但这将使数据库无法使用数据。
latin1_swedish_ci
是排序规则,而不是编码。但是,如果不更改db的编码,您将无法存储
latin1
中不存在的字符,因为它是欧洲字符集,而不是阿拉伯语:。我能想到的唯一解决方案是将数据编码为base64(例如),但这将使数据库无法使用数据。