Если вы смешиваете PHP с JavaScript, всегда рекомендуется проверять вывод, отправляемый в браузер: щелкните правой кнопкой мыши на своем веб-сайте и нажмите на источник просмотра!
JavaScript не волнуетявляется ли содержимое, отправляемое ему, статическим HTML, из базы данных или сгенерированным PHP.Если он находится в выводе, он его проанализирует.
Если бы вы сделали это, вы заметили, что вы не echo
используете переменную $name
.
<script language="JavaScript">
var url = "http://localhost:8888/uploads/"+<? echo $name ?>+"/output.txt";
setTimeout("top.location.href = url",1000);
</script>
Но это дало бы вам
<script language="JavaScript">
var url = "http://localhost:8888/uploads/"+ foo +"/output.txt";
setTimeout("top.location.href = url",1000);
</script>
Что не является допустимым JavaScript, поскольку foo
теперь является переменной JS, а не строкой.
Итак, вы должны иметь:
<script language="JavaScript">
var url = "http://localhost:8888/uploads/<? echo $name ?>/output.txt";
setTimeout("top.location.href = url",1000);
</script>
Кроме того, передача строки в setTimeout
(или setInterval
) не рекомендуется;по тем же причинам против использования eval()
, поэтому вы должны получить что-то вроде этого:
<script language="JavaScript">
var url = "http://localhost:8888/uploads/<? echo $name ?>/output.txt";
setTimeout(function () {
top.location.href = url
},1000);
</script>