我有一个上传图片的上传脚本。
我的目录如下所示:
我的index.php看起来像这样:
<html>
<head>
<!-- Link naar de stylesheet -->
<link rel="stylesheet" type="text/css" href="style/default.css" />
</head>
<body>
<center>
<div id="title">
<h1>Het "Vergeet-mij-nietje"</h1>
<sup>Image Upload Script</sup>
</div>
<!-- Content -->
<div id="content1">
<?php
// Check if a post exist
if( !isset( $_POST['p'] ) ) { $_POST['p']= 0; }
// Include files
if( $_POST['p'] == 1 ){
include( "includes/uploadimage.php" );
}else{
include( "includes/uploadform.php" );
}
?>
</div>
</body>
</html>
在我的包含文件夹中,我有以下文件: uploadform.php uploadimage.php
我的uploadform.php如下所示:
<form method="post" enctype="multipart/form-data">
Kies hier meerdere bestanden om te uploaden
<br /> <br />
<input type="hidden" name="p" value="1" />
<input type="file" name="image" multiple />
<br /> <br />
<input type="submit" value="Upload"/>
</form>
注意多功能。
我的uploadimage.php看起来像这样:
<?php
// variabelen.
$name= $_FILES['image']['name'];
$temp= $_FILES['image']['tmp_name'];
$type= $_FILES['image']['type'];
$size= $_FILES['image']['size'];
$path= 'uploads/ ' . md5( rand( 0, 1000 ) .rand( 0, 1000 ) .rand( 0, 1000 ) .rand( 0, 1000 ) ) . '.jpg';
$size2= getimagesize( $temp );
$width= $size2[0];
$height= $size2[1];
// Benodigdheden
$maxwidth= 1281;
$maxheight= 1081;
$allowed= array( 'image/jpeg', 'image/png', 'image/gif' );
// Echo data.
echo '
'. $name .' <br />
'. $temp .' <br />
'. $type .' <br />
'. $size .' <br />
'. $path .' <br /><br />
'. $width .' x
'. $height .' <br />
';
if( in_array( $type, $allowed ) ){
if( $width < $maxwidth && $height < $maxheight ){
if( $size < 5242880 ){
/*
// Vorm van de foto. Dit is nodig bij het Resizen.
if( $width == $height ){ $case=1;}
if( $width > $height ){ $case=2;}
if( $width < $height ){ $case=3;}
switch( $case ){
// Vierkant
case 1;
$newwidth= 100;
$newheight= 100;
break;
// Liggende Rechthoek
case 2;
$newheight= 100;
$ratio= $newheight / $height;
$newwidth= round( $width * $ratio );
echo $newwidth.'x'.$newheight;
break;
// Staande Rechthoek
case 3;
$newwidth= 100;
$ratio= $newwidth / $width;
$newheight= round( $height * $ratio );
}
*/
}else{
echo '<p><b>De foto die u zojuist heeft geupload is te groot. Upload een foto, kleiner dan 5mb.</b></p>';
}
}else{
echo '<p><b>De foto die u zojuist heeft geupload heeft een te grote resolutie. Upload een kleinere foto.</b></p>';
}
}else{
echo '<p><b>De foto die u zojuist heeft geupload is geen .jpg, .png of .gif. Deze extensie is niet toegestaan.</b></p>';
}
// Upload files.
move_uploaded_file( $temp, $path );
// Terug stuur link
echo '<a href="index.php">Ga Terug</a>';
?>
请注意,我没有使用宽度和高度函数
我的问题:
我的问题是uploadimage.php无法上传多张图片。它当时只能上传1张图片。
如何更改uploadimage.php中的代码,以便一次上传多个文件。
感谢
答案 0 :(得分:1)
我猜你发帖子时应该有一个数组
尝试替换:
<input type="file" name="image" multiple />
使用:
<input type="file" name="image[]" multiple />
在 uploadimage.php 中使用新的数组:$ _FILES ['image'] [i] ['name']其中'i'是您喜欢的图像编号有
使用循环来获取所有这些。
看看:PHP文档 http://php.net/manual/en/features.file-upload.multiple.php