日期:2014-05-17  浏览次数:20479 次

php上传图片
在网页中我想先来个预览 比如说我刚上传的图片在网页中显示 该怎么办啊 不应该echo "<img src='$tmp_name'>"; 这样写吗? 哪该怎样写啊

用上传时间命名图片 该如何改写代码


 <?php

if (is_uploaded_file($_FILES['upfile']['tmp_name'])){

$upfile=$_FILES["upfile"];

$name = $upfile["name"];
$type = $upfile["type"];
$size = $upfile["size"];
$tmp_name = $upfile["tmp_name"];
$error = $upfile["error"];


switch ($type) {
case 'image/pjpeg' : $ok=1;
break;
case 'image/jpeg' : $ok=1;
break;
case 'image/gif' : $ok=1;
break;
case 'image/png' : $ok=1;
break;
}

if($ok && $error=='0'){
 move_uploaded_file($tmp_name,'up/'.$name);
 echo "上传成功";
 echo "$name<br/>";
 echo "$type<br/>";
 echo "$size<br/>";
 echo "$tmp_name<br/>";
  
 
}
}


?>

<form action="imag.php" enctype="multipart/form-data" method="post" name="upform">
  上传文件:
  <input name="upfile" type="file">
  <input type="submit" value="上传"><br>
   
 </form>


------解决方案--------------------
我好像记得你在哪个帖问过这个问题吧?本来想下午给你答的,结果你发到这了?
你的时间打算用什么时间表示?时间戳?

这里修改
//move_uploaded_file($tmp_name,'up/'.$name);
//取得文件扩展名
$oldname=$upfile['name'];//注意包含路径
$fileexpand=pathinfo($oldname, PATHINFO_EXTENSION);
$filename=strtotime();//时间戳
//$filename=date('YmdGis');//北京时间
move_uploaded_file($tmp_name,'up/'.$filename.$fileexpand);

------解决方案--------------------
move_uploaded_file($tmp_name,'up/'.$filename.$fileexpand);

这里有误修改成
move_uploaded_file($tmp_name,'up/'.$filename.'.'.$fileexpand);

上面给你的代码就是你要的
用上传时间命名图片 该如何改写代码

还有个问题显示图片预览
可以用js 控制一个隐藏的div 来读取图片 上传结束后将文件名赋值给 js...
估计你也不能明白了....