URLパラメーターから変数をキャッチし、それをhtml edditbaleテキストフィールドを介してJquery/Ajaxに渡し、さらにそれをFirebird DBに渡す外部phpコードに渡すphpコードがあります。問題は、jquery/ajax が ä のような文字を ä などに変更していることです。
最初に、Firebird SQl の更新を ISO8859_1 (テーブルが使用している) ビットでエンコードする必要があると考えた後、文字を変更している Jquery を見つけました。
これが私のコードです:
?>
<div id="wrap">
<h3>Comment</h3>
<div id="status"></div>
<div id="content">
<div id="editable" contentEditable="true">
<?php
echo $row[21];
?>
</div>
<button id="save">Save</button>
</div>
</div>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js" type="text/javascript"></script>
<script>
$(document).ready(function() {
$("#save").click(function (e) {
var content = $('#editable').html()
var nr = <?php echo $s; ?>;
$.ajax({
url: 'save.php',
type: 'POST',
data: {
content: content,
nr: nr
},
success:function (data) {
if (data == '1')
{
$("#status")
.addClass("success")
.html("Data saved successfully")
.fadeIn('fast')
.delay(3000)
.fadeOut('slow');
}
else
{
$("#status")
.addClass("error")
.html("An error occured, the data could not be saved")
.fadeIn('fast')
.delay(3000)
.fadeOut('slow');
}
}
});
});
$("#editable").click(function (e) {
$("#save").show();
e.stopPropagation();
});
$(document).click(function() {
$("#save").hide();
});
});
</script>