PHP встроенный веб-сервер разрушает иностранные символы

На днях я столкнулся с подобной проблемой. Скажем, я хочу передавать данные с клиентской стороны на сервер и записывать данные в файл журнала. Вот мое решение:

Мой простой клиентский код:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"   "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
   <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js" type="text/javascript"></script>
   <title>Test Page</title>
   <script>
    function passVal(){
        var data = {
            fn: "filename",
            str: "this_is_a_dummy_test_string"
        };

        $.post("test.php", data);
    }
    passVal();
   </script>

</head>
<body>
</body>
</html>

И php-код на стороне сервера:

<?php 
   $fn  = $_POST['fn'];
   $str = $_POST['str'];
   $file = fopen("/opt/lampp/htdocs/passVal/".$fn.".record","w");
   echo fwrite($file,$str);
   fclose($file);
?>

Надеюсь, это сработает для вас и будущих читателей!

1
задан Jazerix 17 January 2019 в 14:02
поделиться