Переменная POST & FILES с тем же именем
У меня есть процедура загрузки файла, которая использует iframe для имитации загрузки файла AJAX, которая работает, как и ожидалось. Данные файла отправляются через суперглобальный файл PHP FILES, и вместе с ним в той же форме также передаются другие данные POST.
Форма также содержит текстовый ввод с тем же именем, что и ввод файла, и информация представляется отправленной без ошибок. Фрагмент:
<form>
<input type="text" name="fileData" value="1" />
<input type="file" name="fileData" />
<input type="button" value="UPLOAD" onClick="..JS function.."; return false;" >
<div id="progress div"></div>
</form>
1. Приведет ли это дублированное именование к потенциальным проблемам?
Я делаю это, потому что загруженное изображение должно быть сохранено в определенном месте индекса в таблице изображений в базе данных, и поэтому этот текстовый ввод с повторяющимся именем содержит это значение индекса.
2. Есть ли лучший способ сделать это?
3. Есть ли способ вставить пользовательское подзначение (например, customvar) в суперглобальный файл FILES?
<?php
echo $_FILES["fileData"]["name"];
echo $_FILES["fileData"]["type"];
echo $_FILES["fileData"]["size"];
echo $_FILES["fileData"]["tmp_name"];
echo $_FILES["fileData"]["customvar"]; // = "1";
?>
РЕДАКТИРОВАТЬ:
код PHP...
<?php
echo "File Name: " . $_FILES["fileData"]["name"] . "<br>";
echo "File Type: " . $_FILES["fileData"]["type"] . "<br>";
echo "File Size: " . $_FILES["fileData"]["size"] . "<br>";
echo "Temp Dir: " . $_FILES["fileData"]["tmp_name"] . "<br><br>";
echo "Text Input (same name): " . $_POST["fileData"];
?>
и вывод...
File Name: flower.png
File Type: image/png
File Size: 9196
Temp Dir: /tmp/phpvdRoWF
Text Input (same name): testing...