我正在处理一个 php/HTML Web 项目,并且我有一个包含输入类型文件的表单,该文件应该发布到 PHP 脚本以将图像上传到服务器。在表单标记中,我使用 target 属性来定位 iframe,以便它可以模拟 AJAX 样式的帖子,即它发布到 iframe,因此 iframe 无需刷新主页即可完成工作。
下面是我正在使用的表格。
<form method="post" action="phpHandler/image-uploader.php" target="image_upload_frame">
<table>
<tr>
<td>
Image Title:
</td>
<td>
<input type="text" id="txtImageTitle" name="txtImageTitle" />
</td>
</tr>
<tr>
<td>
Image File:
</td>
<td>
<input type="file" id="txtImageFile" name="txtImageFile" />
</td>
</tr>
</table>
下面是iframe
<iframe id="image_upload_frame" name="image_upload_frame"></iframe>
下面是表单应该发布到的 PHP 脚本。
echo "posting";
$title = $_POST['txtImageTitle'];
$tempName = $_FILES['txtImageFile']['name'];
writeToLog("Image Title:" . $title);
writeToLog("Temp Name: $tempName\n");
$data = var_export($_POST, true);
$fileData = var_export($_FILES, true);
writeToLog($data);
writeToLog($fileData);
function writeToLog($message)
{
$fh = fopen('log.txt', 'a');
fwrite($fh, $message);
fclose($fh);
}
PHP 脚本正在执行,但 $_FILES 和 $_POST 数组为空。
我尝试将 iframe 更改为包含指向 php 脚本的 src 属性,并从表单中删除了该操作,但这似乎甚至没有执行 PHP 脚本。
感谢您的任何帮助,您可以提供。