2012-05-09 135 views
-2

我刚刚通过PHP实现了图片上传到MySQL。但是我想将文本,pdf,doc,zip文件上传到MySQL。这是我的代码。如何改变它?如何通过PHP文件上传到MySQL上传文本,pdf,doc,zip文件

// uploadAction.php 

mysql_connect("localhost", "root", "1989") 

or die(mysql_error()); 

mysql_select_db("uploadfile") or die(mysql_error()); 


$sql_id = "SELECT (MAX(id)+1) as \"result\" FROM save"; 

$rs_id = mysql_query($sql_id); 

$row_id = mysql_fetch_assoc($rs_id); 

$id = $row_id['result']; 

if($id == null) 

$id = 1;  

$newName = ''; 

$file = $_FILES['photo']['name']; 

if ((($_FILES["photo"]["type"] == "image/gif")|| 

($_FILES["photo"]["type"] == "image/jpeg")|| 

($_FILES["photo"]["type"] == "image/pjpeg")) 

&& ($_FILES["photo"]["size"] < 200000)) 
{ 

if ($_FILES["photo"]["error"] > 0) 

    echo "Return Code: " . $_FILES["photo"]["error"] . "<br />"; 

    else{ 

     $newName = "$id.".basename($_FILES["photo"]["type"]); 

     move_uploaded_file($_FILES["photo"]["tmp_name"], "images/" . $newName); 

     } 

} 

else 

    { 

    echo "Invalid file"; 

    } 

$queryUser = "INSERT INTO save VALUES(NULL, \"$newName\")"; 

$insert = mysql_query($queryUser); 

if(!$insert){ 

    echo mysql_error().'Upload Fail'; 

    }else { 

    echo "<script>alert('Upload Sccessful');"; 

    echo 'window.location="index.php";</script>'; 
} 

数据库SQL

CREATE TABLE `save` (

    `id` int(255) NOT NULL auto_increment, 

    `photo` varchar(255) character set utf8 collate utf8_unicode_ci NOT NULL, 

    PRIMARY KEY (`id`) 

) 
+1

如果你之前的代码有四个任意行空格,它会缩进(参见'Markdown'语法的帮助)。每一行之间的回车也会降低可读性 - 您会编辑吗? ':)' – halfer

+0

Protip:粘贴代码时,突出显示它并从工具栏中选择“{}”(或按下“Ctrl”+“k”)。 –

+0

呵呵,我不知道 - 谢谢@Rocket。 – halfer

回答

1

试试这个:

if ($_FILES["photo"]["type"] == "image/gif" || 
$_FILES["photo"]["type"] == "image/jpeg" || 
$_FILES["photo"]["type"] == "image/pjpeg" || 
$_FILES["photo"]["type"] == "application/zip" || 
$_FILES["photo"]["type"] == "application/pdf" || 
$_FILES["photo"]["type"] == "application/msword" || 
$_FILES["photo"]["type"] == "application/vnd.openxmlformats-officedocument.wordprocessingml.document") 

你可以看一下不同的MIME类型在这里:http://en.wikipedia.org/wiki/Internet_media_type

+0

谢谢你的回答。但是msword和zip不能上传到MySQL。 – tommychoo