关于验证三个上传文件upload 需要上传三张图片,也就是 3个 file控件这三个控件都需要限定文件格式,"jpg","jpeg","bmp"然后还要判断文件大小,必须小于2MB以前单纯做一个的时候会做,但是三个怎么判断啊总出错,file1格式对,file2格式错,但是仍然可以判断进 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 复制你第一个可以的代码然后改下名称 比如你在表单的第一个file控件名叫 upload第二 第三改成 upload2 upload3只要你第一个正确肯定可以 要不给代码 if($_POST[sub]) { $name=$_POST[name];//お名前 $jname=$_POST[jname];//フリガナ $email=$_POST[email];//email $tel=$_POST[tel];//電話番号 $handphone=$_POST[handphone];//携帯電話 $wish1=$_POST[wish1];//第一希望 $wish2=$_POST[wish2];//第二希望 $wish3=$_POST[wish3];//第三希望 $wish4=$_POST[wish4];//第四希望 $asse=$_POST[asse];//自分に対しての評価 $kzm1=substr($_FILES[image1][name],strrpos($_FILES[image1][name],".")+1); $kzm2=substr($_FILES[image2][name],strrpos($_FILES[image2][name],".")+1); $kzm3=substr($_FILES[image3][name],strrpos($_FILES[image3][name],".")+1); $classid=30;//id,暂时标示,以后看分配 if($kzm1!="" and $kzm1!="jpg" and $kzm1!="JPG" and $kzm1!="jpeg" and $kzm1!="JPEG" and $kzm1!="bmp" and $kzm1!="BMP")//判断上传图片的格式 { echo "<script>alert('写真1图片格式错误')</script>"; return; } else if($kam2!="" and $kzm2!="jpg" and $kzm2!="JPG" and $kzm2!="jpeg" and $kzm2!="JPEG" and $kzm2!="bmp" and $kzm2!="BMP" ) { echo "<script>alert('写真2图片格式错误')</script>"; return; } if($kzm3!="" and $kzm3!="jpg" and $kzm3!="JPG" and $kzm3!="jpeg" and $kzm3!="JPEG" and $kzm3!="bmp" and $kzm3!="BMP") { echo "<script>alert('写真3图片格式错误')</script>"; return; } else if($_FILES[image1][size]>2000000) { echo "<script>alert('写真1大于2MB,请重新选择图片')</script>"; } else if($_FILES[image2][size]>2000000) { echo "<script>alert('写真2大于2MB,请重新选择图片')</script>"; } else if($_FILES[image3][size]>2000000) { echo "<script>alert('写真3大于2MB,请重新选择图片')</script>"; } else { if(!is_dir("file"))//file不存在的情况下建立file文件夹 { mkdir("file"); } $upfile1="file/".date(ymjhis).rand(1,1000).".".$kzm1;//上传路径 $upfile2="file/".date(ymjhis).rand(1,1000).".".$kzm1;//上传路径 $upfile3="file/".date(ymjhis).rand(1,1000).".".$kzm1;//上传路径 move_uploaded_file($_FILES[image1][tmp_name],$upfile1);//上传文件 move_uploaded_file($_FILES[image2][tmp_name],$upfile2);//上传文件 move_uploaded_file($_FILES[image3][tmp_name],$upfile3);//上传文件 $sql="insert into huanjie_ecms_wishfemale (name,jname,email,tel,handphone,wish1,wish2,wish3,wish4,asse,image1,image2,image3,classid) values ('$name','$jname','$email','$tel','$handphone','$wish1','$wish2','$wish3','$wish4','$asse','$upfile1','$upfile2','$upfile3','$classid')";//SQL语句 include("db.php");//数据库操作 if($ret) { echo "<script>alert('输入成功');</script>"; } } } 为什么要这样写呢?令<input type='file name='image[]' >php$msg = '';foreach($_FILES['image']['name'] as $i=>$name) { $kzm = strtolower(substr($name, strrpos($name,".")+1)); if(! in_array($kzm, array("jpg","jpeg","bmp")) $msg .= "<script>alert('写真1图片格式错误')</script>"; if($_FIELDS['image']['size'][$i] > 2000000) $msg .= "<script>alert('写真1大于2MB,请重新选择图片')</script>";}if(! empty($msg)) { echo $msg; return;} html代码部分是这样的分三个IMAGE <tr> <td height="25"><span class="STYLE16">写真1</span></td> <td colspan="2"><input name="image1" type="file" id="image1" size="30" /><label><div><? echo $_SESSION[image1]?></div></label></td> <span class="STYLE13"><span class="STYLE22">※ あまり大きな写真は送信できません</span>。</span><tr> <td height="25"><span class="STYLE16">写真2</span></td> <td colspan="2"><input name="image2" type="file" id="image2" size="30" /></td> </tr> <tr> <td height="25"><span class="STYLE16">写真3</span></td> <td colspan="2"><input name="image3" type="file" id="image3" size="30" /></td> 通过后缀名去判断文件类型很显然是不可靠的,建议通过MIME类型去判断list($width, $height, $type, $attr) = getimagesize($_FILES['Filedata']['tmp_name']);通过判断$type是否为".jpg",".jpeg",".bmp" <?php if($_POST['sub']) { $msg ='';$j = 1;foreach($_FILES['image']['name'] as $i=>$name) { $kzm = strtolower(substr($name, strrpos($name,".")+1)); if(!empty($kzm)) { if(!in_array($kzm, array("jpg","jpeg","bmp"))) { $msg .= "<script>alert('写真".$j."图片格式错误')</script>"; } if($_FILES['image']['size'][$i] > 2000000) { $msg .= "<script>alert('写真".$j."大于2MB,请重新选择图片')</script>"; } } if(!empty($msg)) { echo $msg; return; } $j += 1;}}?><form method="post" action="t.php" enctype="multipart/form-data">写真1<input type="file" name="image[]"><br>写真2<input type="file" name="image[]"><br>写真3<input type="file" name="image[]"><br><input type="submit" value="sub" name="sub"></form>用版主的代码改了下 版主的少了个 ) 跟$_FIELDS写错 楼主试的话改下 请教:这个正则表达式该怎么写? 网页制作 用什么方法 能阻挡 locus7s 攻击 有人用过 class smtp{} 这个类么?怎么发送附件啊? 【求助】Warning: mcrypt_encrypt() [function.mcrypt-encrypt]: Module initialization failed 菜鸟:请问各位如何把下面这段PHP代码嵌入到html页面里. 重定向的问题!!!困扰中 phpbb论坛出错,请教高高手! 递归查找子孙树 WampServer端口的修改 关于读取数据分页的效率讨论 删除数组中重复数据
然后改下名称 比如你在表单的第一个file控件名叫 upload
第二 第三改成 upload2 upload3
只要你第一个正确肯定可以
要不给代码
if($_POST[sub])
{
$name=$_POST[name];//お名前
$jname=$_POST[jname];//フリガナ
$email=$_POST[email];//email
$tel=$_POST[tel];//電話番号
$handphone=$_POST[handphone];//携帯電話
$wish1=$_POST[wish1];//第一希望
$wish2=$_POST[wish2];//第二希望
$wish3=$_POST[wish3];//第三希望
$wish4=$_POST[wish4];//第四希望
$asse=$_POST[asse];//自分に対しての評価
$kzm1=substr($_FILES[image1][name],strrpos($_FILES[image1][name],".")+1);
$kzm2=substr($_FILES[image2][name],strrpos($_FILES[image2][name],".")+1);
$kzm3=substr($_FILES[image3][name],strrpos($_FILES[image3][name],".")+1);
$classid=30;//id,暂时标示,以后看分配
if($kzm1!="" and $kzm1!="jpg" and $kzm1!="JPG" and $kzm1!="jpeg" and $kzm1!="JPEG" and $kzm1!="bmp" and $kzm1!="BMP")//判断上传图片的格式
{
echo "<script>alert('写真1图片格式错误')</script>";
return;
}
else if($kam2!="" and $kzm2!="jpg" and $kzm2!="JPG" and $kzm2!="jpeg" and $kzm2!="JPEG" and $kzm2!="bmp" and $kzm2!="BMP" )
{
echo "<script>alert('写真2图片格式错误')</script>";
return;
}
if($kzm3!="" and $kzm3!="jpg" and $kzm3!="JPG" and $kzm3!="jpeg" and $kzm3!="JPEG" and $kzm3!="bmp" and $kzm3!="BMP")
{
echo "<script>alert('写真3图片格式错误')</script>";
return;
}
else if($_FILES[image1][size]>2000000)
{
echo "<script>alert('写真1大于2MB,请重新选择图片')</script>";
}
else if($_FILES[image2][size]>2000000)
{
echo "<script>alert('写真2大于2MB,请重新选择图片')</script>";
}
else if($_FILES[image3][size]>2000000)
{
echo "<script>alert('写真3大于2MB,请重新选择图片')</script>";
}
else
{
if(!is_dir("file"))//file不存在的情况下建立file文件夹
{
mkdir("file");
}
$upfile1="file/".date(ymjhis).rand(1,1000).".".$kzm1;//上传路径
$upfile2="file/".date(ymjhis).rand(1,1000).".".$kzm1;//上传路径
$upfile3="file/".date(ymjhis).rand(1,1000).".".$kzm1;//上传路径
move_uploaded_file($_FILES[image1][tmp_name],$upfile1);//上传文件
move_uploaded_file($_FILES[image2][tmp_name],$upfile2);//上传文件
move_uploaded_file($_FILES[image3][tmp_name],$upfile3);//上传文件
$sql="insert into huanjie_ecms_wishfemale (name,jname,email,tel,handphone,wish1,wish2,wish3,wish4,asse,image1,image2,image3,classid) values ('$name','$jname','$email','$tel','$handphone','$wish1','$wish2','$wish3','$wish4','$asse','$upfile1','$upfile2','$upfile3','$classid')";//SQL语句
include("db.php");//数据库操作
if($ret)
{
echo "<script>alert('输入成功');</script>";
}
}
}
令
<input type='file name='image[]' >php$msg = '';
foreach($_FILES['image']['name'] as $i=>$name) {
$kzm = strtolower(substr($name, strrpos($name,".")+1));
if(! in_array($kzm, array("jpg","jpeg","bmp"))
$msg .= "<script>alert('写真1图片格式错误')</script>";
if($_FIELDS['image']['size'][$i] > 2000000)
$msg .= "<script>alert('写真1大于2MB,请重新选择图片')</script>";
}
if(! empty($msg)) {
echo $msg;
return;
}
<td height="25"><span class="STYLE16">写真1</span></td>
<td colspan="2"><input name="image1" type="file" id="image1" size="30" /><label><div><? echo $_SESSION[image1]?></div></label></td>
<span class="STYLE13"><span class="STYLE22">※ あまり大きな写真は送信できません</span>。</span><tr>
<td height="25"><span class="STYLE16">写真2</span></td>
<td colspan="2"><input name="image2" type="file" id="image2" size="30" /></td>
</tr>
<tr>
<td height="25"><span class="STYLE16">写真3</span></td>
<td colspan="2"><input name="image3" type="file" id="image3" size="30" /></td>
通过判断$type是否为".jpg",".jpeg",".bmp"
<?php
if($_POST['sub'])
{
$msg ='';
$j = 1;
foreach($_FILES['image']['name'] as $i=>$name) {
$kzm = strtolower(substr($name, strrpos($name,".")+1));
if(!empty($kzm))
{
if(!in_array($kzm, array("jpg","jpeg","bmp")))
{
$msg .= "<script>alert('写真".$j."图片格式错误')</script>";
}
if($_FILES['image']['size'][$i] > 2000000)
{
$msg .= "<script>alert('写真".$j."大于2MB,请重新选择图片')</script>";
} }
if(!empty($msg)) {
echo $msg;
return;
}
$j += 1;
}
}
?>
<form method="post" action="t.php" enctype="multipart/form-data">
写真1<input type="file" name="image[]"><br>
写真2<input type="file" name="image[]"><br>
写真3<input type="file" name="image[]"><br>
<input type="submit" value="sub" name="sub">
</form>用版主的代码改了下 版主的少了个 ) 跟$_FIELDS写错 楼主试的话改下