Неправильно срабатывает условие, как будто выполняется 2 раза
Почему неправильно срабатывает условие? Если я ввожу html_name которого не существует, то он создает файл с этим именем, выводит success но тут же переключается и выводит errorest. Почему? Как будто запрос отправляется второй раз. Что нужно прописать чтобы он нормально работал?
<?php
$result = [];
$title=$_POST['titles'];
$text=$_POST['txt'];
$html_name=$_POST['html_name'];
$filename = 'news/'.$html_name.'.html';
if (file_exists($filename)){
$result['message3'] = 'errorest';
exit(json_encode($result)); // Выходим и превращаем массив $result в json
}
else
{
$f = fopen('news/'.$html_name.'.html', "w");
fwrite($f, $strOuthtm);
fclose($f);
$result['message1'] = 'success';
exit(json_encode($result));
}
?>
Ajax
$.ajax({
type:'POST', // Тип запроса
url: 'handler.php', // Скрипт обработчика
data: formData, // Данные которые мы передаем
cache:false, // В запросах POST отключено по умолчанию, но перестрахуемся
contentType: false, // Тип кодирования данных мы задали в форме, это отключим
processData: false, // Отключаем, так как передаем файл
success:function(data){
var res = JSON.parse(data); // Парсим json
if (res.message3 == 'errorest') {
$('#result').text(res.message3);
$('#result').show();
}
if (res.message1 == 'success') {
$('#result').text(res.message1);
$('#result').show();
}
}
});