我愿意上传多张图片但有奇怪的问题..我正在使用这个简单的代码......
<?php
require("query/config.php");
$p_id=$_POST['place_id'];
$file=$_FILES["image"]["name"];
print_r($file);
echo "hghghg";
foreach($file as $key=>$val)
{
move_uploaded_file($_FILES["image"]["tmp_name"],"/upload/" . $val);
$query=mysqli_query($con,"insert into city_gallery set place_id='$p_id',image='$val'") or die("Alert! Query failed.");
}
如果我不使用 foreach 循环,这是代码不起作用并且不会在 upload.php 页面上显示任何内容...例如,如果我在 upload.php 上只有此代码..它会显示...
<?php
require("query/config.php");
$p_id=$_POST['place_id'];
$file=$_FILES["image"]["name"];
print_r($file);
echo "hghghg";
这里的输出是......Array ( [0] => 86662.jpg [1] => beautiful-girl-baby-hd-images.jpg [2] => [3] => ) hghghg
所以它的意思是图像数组出现在这个页面上......但是当我使用上面的代码时,foreach
它在这个页面上什么都不显示,也没有在上传文件夹中移动图像,而不是图像名称进入数据库,
这是我的表格..
<form action="upload.php" method="post" enctype="multipart/form-data">
<?php
include("query/config.php");
$query=mysqli_query($con,"select * from cite_guide order by id desc");
?>
<select id="place_id" name="place_id" >
<option value="0">Select Place</option>
<?php
while($row=mysqli_fetch_array($query))
{
?>
<option value="<?php echo $row['id']; ?>"><?php echo $row['place']; ?></option>
<?php
}
?>
</select>
<fieldset>Image 1
<input type="file" class="input-medium" name="image[]" />
</fieldset>
<fieldset>Image 2
<input type="file" class="input-medium" name="image[]" />
</fieldset>
<fieldset>Image 3
<input type="file" class="input-medium" name="image[]" />
</fieldset>
<fieldset>Image 4
<input type="file" class="input-medium" name="image[]" /> <input class="submit-green" type="submit" value="Upload" />
</fieldset>
</form>
现在图像名称正在进入数据库,但图像没有移动到上传文件夹...对于图像我更正了这个
move_uploaded_file($_FILES["file"]["tmp_name"],"/upload/" . $val);
至
move_uploaded_file($_FILES["image"]["tmp_name"],"/upload/" . $val);
现在只有图像不动......为什么????
知道为什么会这样...请建议...谢谢