<script type="text/javascript" src="http://scriptjava.net/source/scriptjava/scriptjava.js"></script>
<div id="result">Тут будет ответ от сервера</div><br /><br />
<div onclick="SendGet();">Отправить GET запрос через Ajax</div><br />
<script type="text/javascript">
var timeOutId=0;
function SendGet() {
$$a({
type: 'get',
url: 'ready.php',
dataType: 'text',
response: 'text',
success: function(data) {
if (data == '1') //не выполняется условие
{
$$('result',$$('result').innerHTML+'<br>'+data);
window.location.href="result.txt";
}
}
});
}
</script>
Не работает условный оператор if
Содержимое ready.php:
Код:
<?php
header("Content-type: text/txt; charset=UTF-8");
$filename="result.txt";
$fd=fopen($filename, "r+");
if ($fd)
{
fclose($fd);
if (filesize($filename) > 0)
{
echo '1';
} else
echo '0';
}
?>
header("Content-type: text/txt; charset=UTF-8");
$filename="result.txt";
$fd=fopen($filename, "r+");
if ($fd)
{
fclose($fd);
if (filesize($filename) > 0)
{
echo '1';
} else
echo '0';
}
?>
Код:
Лучше всего избавиться от порчи, уточнив возвращаемое:
Код:
if (parseInt(data) == 1){....}
Наверное потому что data!='1'. Иного объяснения нет и быть не может..
На мой взгляд он должен писать ошибку на 4-й строке. Потому что путь до файла result.txt должен быть абсолютным. Наример так:
$filename= __DIR__ . "/result.txt";
Цитата: mfender
Что вообще возвращает ready.php?
На мой взгляд он должен писать ошибку на 4-й строке. Потому что путь до файла result.txt должен быть абсолютным. Наример так:
$filename= __DIR__ . "/result.txt";
На мой взгляд он должен писать ошибку на 4-й строке. Потому что путь до файла result.txt должен быть абсолютным. Наример так:
$filename= __DIR__ . "/result.txt";
скрипт ready.php пишет 1 и никаких ошибок не возвращает.
Можно же проще:
Код:
header("Content-type: text/html; charset=UTF-8");
$filename= __DIR__ . "/result.txt";
if (file_exists($filename))
{
if (filesize($filename) > 0)
{
echo '1';
} else
echo '0';
}
$filename= __DIR__ . "/result.txt";
if (file_exists($filename))
{
if (filesize($filename) > 0)
{
echo '1';
} else
echo '0';
}
Цитата: Charley
скрипт ready.php пишет 1 и никаких ошибок не возвращает.
А что пишет ready.php, если удалить файл result.txt?