私の主な問題は、2つの異なるファイルアップロードリンクがあり、どちらも目的が異なることです。例:a)ライセンスです。b)写真があるので、両方をアップロードする必要があります。さまざまな場所。私が望んだのは、連想配列の代わりに数値配列としてファイルプロパティを扱うことです.2つのファイルを区別する方法についての提案もあります。ここでファイルを通常の配列として表示する方法
は、入力されたコードサンプルです:ここで
<label for="file-upload" class="custom-file-upload">
<i class="fa fa-cloud-upload">
</i>Upload License
</label>
<input id="file-upload" name="files[]" type="file">
<label for="file-upload" class="custom-file-upload">
<i class="fa fa-cloud-upload">
</i>Upload Photo
</label>
<input id="file-upload" name="files[]" type="file">
アップロードスクリプト(NOTE-Iはまた、(array_valuesを使用して試してみました))
<?php
$name = $_POST['name'];
$email = $_POST['email'];
$tmpname = array_values($_FILES['files']['tmp_name']);
$filename = array_values($_FILES['files']['name']);
$filesize = array_values($_FILES['files']['size']);
$filetype = array_values($_FILES['files']['type']);
$date12 = date('Y-m-d');
//for photo
$file_name2 = $filename[0];
$ext2 = pathinfo($file_name2, PATHINFO_EXTENSION);
$file_name22= $name.".".$ext2;
$file_size2 = $filesize[0];
$file_tmp2 = $tmpname[0];
$file_type2 = $filetype[0];
$extensions = array("jpg","jpeg","png","pdf","zip","rar");
$type = "photo";
$desired_dir = "user_data";
if(in_array($ext2,$extensions) === false)
{
$errors2 = "Extension not allowed!";
}
else
{
//Added file size limit
if($file_size2 > 2097152)
{
$errors2 = 'File size must be less than 2 MB';
}
if(empty($errors2) == true)
{
// Inserting info into database for easy retrieval
$query1 = $this->pdo->prepare("
INSERT into upload_data (NAME,EMAIL,FILE_NAME,FILE_SIZE,FILE_TYPE,date1,file_ext,type)
VALUES('$name','$email','$file_name22','$file_size2','$file_type2','$date12','$ext2','$type')
");
$query1->execute();
if(is_dir($desired_dir) == false)
{
mkdir("$desired_dir", 0700); // Create directory if it does not exist
}
if(is_dir("$desired_dir/".$file_name22) == false)
{
move_uploaded_file($file_tmp,"user_data/".$type.$file_name22);
}
else
{
//rename the file if another one exist
$new_dir = "user_data/".$file_name22.time();
rename($file_tmp2,$new_dir) ;
}
echo "
<script>
Materialize.toast('Successfully Uploaded!', 8000)
</script>";
}
else
{
echo "
<script>
Materialize.toast($errors, 8000)
</script>";
}
}
がためにあなたに
まず、idを2度使用しないでください。あなたの実際の質問にお答えしてください:あなたは何を試しましたか、何を得るのですか、それはなぜ機能しませんか? – Cashbee
あなたはhtmlで違った名前を付けてみましたが、$ _FILES ['license']と$ _FILES ['photo']でファイルを取得しましたか? – Cashbee
はい私はそれらと違った名前を付けてみましたが、それはうまくいかないようです。私が知っているのはアップロードされていないということだけです。アップロードスクリプトもありますが、それはここの犯人ではありません。ここでの編集 –