У меня есть contenteditable таблица в HTML, которую я записываю в файл через ajax и PHP fwrite.Это работает, за исключением случаев, когда есть пробел, <или> (
или <
или >
) в одном из содержимого, запись не происходит, коды ошибок не отображаются.Весь код находится в одном файле .php.
var table = $('.table-editable')[0].outerHTML;
var data = 'data='+table+'?filename='+filename;
//var dataencoded = encodeURI(data);
$.ajax({
url: "index.php",
type: "post",
dataType:"html",
data: data ,
success: function (response) {
// you will get response from your php page (what you echo or print)
},
error: function(jqXHR, textStatus, errorThrown) {
console.log(textStatus, errorThrown);
}
});
response.innerHTML='created';
}
<?php
error_reporting(E_ALL);
var_dump($_SERVER);
$post_data = $_POST['data'];
$datas = explode("?filename=", $post_data);
if (!empty($datas[0])) {
$filename = $datas[1].'.php';
$towrite = htmlspecialchars_decode($datas[0]);
$handle = fopen($filename, "w");
fwrite($handle, $towrite);
fclose($handle);
echo $filename;
}
?>