语句的位置调整下,然后写法稍微改下就好了
if (is_uploaded_file($_FILES['upfile']['tmp_name'])){
$upfile=$_FILES["upfile"];
$rand=rand(0,9999);
$type = $upfile["type"];
$fi=$rand.'.'.$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/'.$fi);
echo "上传成功";
}
else{
echo "False";
}
你的sql语句来
也可能是你的路径问题!!
if(isset($_POST['sub']))
{
$oldName=$_FILES['upfile']['name']; //获得就的文件名
$tmp=strrchr($oldName,'.'); //获得后缀
$newName=time().$tmp; //时间戳家后缀成新名
$path="../../upload/".$newName; //指定路经过
if(is_uploaded_file($_FILES['upfile']['tmp_name']))//检验是否通过正确路径上传文件
{
if(move_uploaded_file($_FILES['upfile']['tmp_name'],$path))//在临时文件夹中转移文件到指定路径
{
$pname =$_POST['pname'];
$mold =$_POST['mold'];
$pub_man=$_POST['pub_man'];
$intro=$_POST['text'];
$pub_time=date('Y-m-d h:i:s');
$type =$_POST['slt'];
$sql="
insert into `tb_product`(`pname`,`picture`,`mold`,`intro`,`pub_time`,`pub_man`,`tid`) values('".$pname."','".$newName."','".$mold."','".$intro."','".$pub_time."','".$pub_man."','".$type."')";
$query=mysql_query($sql,$con);
if($query>0)
{
echo
"";
}
else
{
echo '添加失败!!';
}
}
}
}