Я пытаюсь написать сценарий, который загружает файл через html-форму. Когда я нажимаю кнопку «Отправить», ничего не происходит.php upload file function
файл: upload_form.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<form action="do_upload.php" method="post" enctype="multipart/form-data"></form>
<p><strong>File to upload</strong></p>
<p><input name="img1" type="file" size="30" /></p>
<p><input name="submit" type="submit" value="Upolad File" /></p>
</body>
</html>
файл: do_upload.php
<?php
if ($_FILES[img1] != "" {
@copy($_FILES[img1] [tm_name], "/tmp" .$_FILES[img1][name])
or die("couldnt copy the file");
} else {
die("no file specified");
}
?>
<HTML>
<head>
<title>Successfull File Upload</title>
</head>
<body>
<h1>Success</h1>
<p>You sent: <? echo $_FILES[img1][name]; ?>, a <? echo $_FILES[img1][size]; ?>byte filw with a mime type of <? echo $_FILES[img1][type]; ?></p>
</body>
</HTML>
«Ничего не происходит», как в «вы получаете пустую страницу»? «Он не подчиняется»? Во втором файле есть синтаксическая ошибка, которая может быть причиной того, что ничего не происходит. (В первом тоже, на самом деле. :)) – deceze
как он это не отправляет, у меня было закрытие до раннего. Теперь я должен найти ошибку в строке 2 в do_upload.php – Jacksta
Вам не хватает скобок. Строковые литералы должны быть указаны ('$ _FILES ['img1']', а не '$ _FILES [img1]'; http://php.net/manual/en/language.types.array.php#language.types. array.foo-бар). Кроме того, вы должны использовать 'empty',' isset' или 'array_key_exists' вместо сравнения потенциально несуществующего значения массива с пустой строкой. Наконец, не используйте 'die' таким образом (http://www.phpfreaks.com/blog/or-die-must-die). – outis