我正在尝试使用多维数组来存储来自三个单独元素(标题,图像和子文件夹)的信息。这三个元素是个人可以上传到我网站上的照片描述。我已经建立了一个初始页面,询问访问者他们打算上传多少张照片以及来自哪个国家/地区(输入类型=选择)。根据对初始表单的响应,第二页使用循环生成适当数量的,和元素。提交第二个表单后,目的是将信息上传到它所执行的服务器。第二个目标是将该信息存储在多维数组中,如下所示,以便上传到MySQL表中。我的困境在于大概从($ _FILES ['image'] ['name'])获取图像名称以将其自身插入到我的多维数组中。标题''将自己插入到多维数组中,国家名称('name = subfolder'])也不是图像名称。我非常感谢愿意为此提供帮助的人。 谢谢。
Array ( [caption] => Array ( [0] => Nice Simple Picture [1] Another Nice Simple Picture=> )
[image] => [subfolder] => Array ( [0] => Italy ) [upload] => UPLOAD )
以下是我试图解决的问题......
<?php
$file=$_FILES['image']['name'];
$expected = array('image','subfolder','caption');
foreach ($_POST as $key => $value) {
if (in_array ($key, $expected)) {
${$key} = mysql_real_escape_string($value); }}
$sql = "INSERT INTO images (file_name, country, caption)
VALUES ('$image', '$subfolder', '$caption')";
$result = mysql_query($sql) or die (my_sql_error()); }
?>
<form action="<?php $_SERVER['PHP_SELF']; ?>" id="form1" name="form1" method="POST"
enctype="multipart/form-data">
<?php
for ($i=0; $i<$imgnumb; $i++) {
echo "<input type=\"file\" name=\"image[".$i."]\" /> <input type=\"text\"
name=\"caption[".$i."]\" /><br />"; }
?>
<br />
<input value="<?php echo $file; ?>" name="image" type="hidden" />
<input value="<?php echo $location; ?>" name="subfolder" type="hidden" />
<input value="<?php echo $_POST['caption']; ?>" name="caption" type="hidden" />
<input type="submit" name="upload" id="next" value="UPLOAD" />
</form>