После одного из моих PHP-скриптов я запускаю этот код

echo ('<script type="text/javascript">alert("hi");</script>');

Однако предупреждение не отображается. Является ли это ограничением того, как загружается DOM, и если да, то как мне обойти это?

0
nathanfranke 1 Мар 2018 в 07:35

3 ответа

Лучший ответ

Как предположил @mike, проблема в том, что простое добавление скрипта в DOM обычно не выполняет его. Решение состоит в том, чтобы изменить логику кода.

Либо код PHP должен перенаправить браузер на другую страницу, либо JavaScript AJAX должен иметь прослушиватель событий для завершения загрузки.

0
nathanfranke 16 Окт 2019 в 05:15

Проблема в том, что у вас есть опечатка. Должно быть $_FILES, а не $FILES Также вы неправильно используете функцию move_uploaded_file(). Синтаксис выглядит следующим образом

move_uploaded_file($tmp_name, "$uploads_dir/$name");

Где

$tmp_name = $_FILES["file"]["tmp_name"];

$uploads_dir = 'Location Folder of where the file should be stored';

$name = $_FILES["file"]["name"];

Также я настоятельно рекомендую вам добавить некоторые проверки для этого модуля загрузки. Как таковые, вредоносные файлы, такие как трояны и т. Д. Могут быть легко загружены.

0
Akintunde-Rotimi 1 Мар 2018 в 04:53

Попробуйте использовать JavaScript следующим образом:

window.top.window.yourFunctionName();

В вашем случае это будет выглядеть так:

echo ('<script type="text/javascript">window.top.window.alert("hi");</script>');
0
slon 1 Мар 2018 в 04:41