Как опубликовать имя пользователя, пароль и несколько двоичных файлов из одной HTML-формы и обработать ее с помощью php? Мне не разрешено использовать ajax.
мне нужно сохранить файлы на сервере. имя пользователя и пароль проверяются по базе данных.
Не думаю, что я понял вопрос ... что вы собираетесь обрабатывать? Какая обработка?






Вы должны использовать суперглобальную функцию $_FILES и функцию move_uploaded_file(), чтобы увидеть, какие файлы были успешно загружены, и переместить их в их окончательное расположение, если они были загружены.
Суперглобальный сервер $_POST будет содержать отправленные имя пользователя и пароль.
сначала проверьте эти страницы на PHP.net
move_uploaded_fileНо для начала вот пара файлов-заглушек.
uploadForm.html
<html>
<body>
<form action = "processStuff.php" enctype = "multipart/form-data" method = "POST">
username: <input type = "text" name = "username" />
password: <input type = "password" name = "password" />
<p>
<input type = "file" name = "uploadFile[]" /><br />
<input type = "file" name = "uploadFile[]" /><br />
<input type = "file" name = "uploadFile[]" /><br />
<!-- Add as many of these as you want -->
</p>
<p>
<input type = "submit" />
</p>
</form>
</body>
</html>
processStuff.php
<pre>
<?php
echo '<h2>Username & password</h2>'
echo "Username: {$_POST['username']}\nPassword: {$_POST['password']}";
echo '<hr />';
echo '<h2>Uploaded files</h2>'
foreach($_FILES['uploadFile']['tmp_name'] as $i => $tempUploadPath) {
if (empty($tempUploadPath)) {
// this <input type = "file" /> was "blank"... no file selected
} else {
// a file was uploaded
echo '<strong>A file named "', $_FILES['uploadFile']['name'][$i], "\" was uploaded</strong>\n";
echo "\ttemporarily stored at: ", $tempUploadPath, "\n";
echo "\tmime type: ", $_FILES['uploadFile']['type'][$i], "\n";
echo "\tsize: ", $_FILES['uploadFile']['size'][$i], " bytes\n";
echo "\terror code",
((empty($_FILES['uploadFile']['size'][$i])
? '<em>no errror</em>'
: $_FILES['uploadFile']['size'][$i])),
"\n\n";
// do something useful with the uploaded file
// access it via $tempUploadPath and use move_uploaded_file() to move
// it out of the temp path before you manipulate it in any way!!!!!
// see http://us3.php.net/features.file-upload
// and http://us3.php.net/manual/en/function.move-uploaded-file.php
}
}
?>
</pre>
В HTML-файле показано, как установить enctype для <form>, а вторая форма покажет вам, как получить доступ к представленному имени пользователя и паролю и, наконец, как пройти через каждый загруженный файл.
Как уже отмечалось, вы ДОЛЖНЫ переместить файл (ы) как можно скорее. Они загружены во временное хранилище, и система удалит их, если вы с ними не разберетесь. Так что сначала переместите их куда-нибудь, а затем делайте с ними все, что вам нужно.
Надеюсь, это поможет
Арин
кажется, их двое; отсутствует в конце следующих строк: echo '<h2> Имя пользователя и пароль </h2>' echo '<h2> Загруженные файлы </h2>'
что вы хотите делать с этой информацией? сохранить в базе данных?