файловые системы — захват данных и изображений с помощью php, сохранение данных в новом каталоге с динамическим именем на основе имени файла

Я немного неопытен с PHP, поэтому я был бы признателен за любую помощь, которую я могу получить. Я ищу:

Захватите имя пользователя, фамилию и изображение. После того, как они поместили эти биты данных в форму, они будут отправлены процессору php, который использует фамилию пользователя в качестве переменной, установив его в качестве нового каталога, содержащего data.txt и avatar.jpg || .png || .bmp || .gif (который должен содержать всю информацию, введенную в веб-форму). Безопасность не является проблемой в этом, равно как и проверка, так как я рассмотрел эту часть. Мне просто нужно знать, как я могу подойти к этому. Вот некоторый пример кода, который в настоящее время получает меня никуда:

index.html:

<form enctype="multipart/form-data" action="process.php" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="512000" />
<input type="text" name="fname">
Send this file: <input name="userfile" type="file" />
<input type="submit" value="Send File" />
</form>

process.php

<?php

$uploaddir = '/home/nicholasabrams/public_html/' + $_POST['lname'] + '/'
+  $_FILES['userfile']['name'];
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);

echo "<p>";if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
echo "File is valid, and was successfully uploaded.\n";
} else {
echo "Upload failed";
}

echo "</p>";
echo '<pre>';
echo 'Here is some more debugging info:';
print_r($_FILES);
print "</pre>";

0

Решение

Убедитесь, что фамилии уникальны, вы можете сделать это разными способами, поэтому я оставлю это с вами здесь, как вы можете сделать все остальное

<?php
//process.php
$uploaddir = '/home/nicholasabrams/public_html/' + $_POST['lname'].'/';
//TODO get the extension of a file from $_FILES['userfile']['name']
//$EXTENSION=.....
$EXTENSION = 'jpg';
if( ! is_dir($uploaddir) ){
mkdir($uploaddir);
}else{
// CONFLICT differen user same last name , or same user needs to change some data
}
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploaddir.'avatar.'.$EXTENSION ){
$data = "Last Name:" . $_POST['lname'] ."\n";
//$data .= ..... additional data that you need
file_put_contents($uploaddir.'data.txt',$data);

}
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]