0

どこかで文字セット構成に問題があり、助けが必要です。

私はjQueryjeditableを使用して、phpを介してデータベースの値を更新しています。øæåこのスクリプトを介して投稿すると、æøå代わりにデータベースにデータが入力されます。utf8_encodeも試しましたが、うまくいきませんでした。øæå正常に動作する通常の投稿

$(document).ready(function() {
    $('.update_pipu_comment').editable('http://lin01.test.no/save.php?update=pipu_comment',   {
        event : 'dblclick',
        submit : 'ok',
        indicator : '<img src="image/indicator.gif">',
        tooltip : 'doubleclick to edit'
    });
});
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?php 
//save.php
require('config.php');
$postvalue = $_POST[value];
$id = $_POST[id];
$update = $_GET[update];

if($update == 'pipu_comment')   {
$res = mysql_query("UPDATE pinpuk SET comment = '$postvalue' WHERE id = '$id'");
}
echo $postvalue;
4

1 に答える 1

1

最初に文字セットを UTF-8 に設定できます。

$query = "SET NAMES 'UTF8'";
mysql_query($query); // this before any insert

また、コードは SQL セーフではありません。

$postvalue = mysql_real_escape_string($_POST['value']);
$id = (int)$_POST['id'];

補足として、MySQLi または PDO への移行を試みる必要があります。これは、 PDOの使用を開始するための優れたチュートリアルです。

于 2012-10-05T07:16:42.230 に答える