2015-01-03 50 views
-3

我正在编写用于在MySQL上传文件的PHP代码,但它不起作用。我真的不知道发生了什么问题。 php代码有什么问题,或者与连接有关吗?将PHP上传文件到MySQL

<?php 
include("Connection.php"); 

if (isset($_POST['submit'])) 
{ 
    $extensions = array("doc", "docx", "txt"); 
    $file_extension = pathinfo($_FILES["File"]["name"], PATHINFO_EXTENSION); 

    if ($_FILES["File"]["error"]==0) 
    { 
     echo "File uploading..."; 
     if ($_FILES["File"]["size"]<20000 && in_array($file_extension, $extensions)) 
     { 
      $Title = $_POST["Title"]; 
      $Type = $_FILES["File"]["type"]; 
      $Size = intval($_FILES["File"]["size"]); 
      $Data = file_get_contents($_FILES["File"]["tmp_name"]); 
      $Created = date("Y-m-d H:i:s"); 

      $query = "INSERT INTO `files` (title, type, size, data, created) VALUES ('$Title', '$Type', '$Size', '$Data', '$Created')"; 
      mysql_query($query) or die("Query failed..."); 
     } 
     else 
      echo "Invalid file. Try again."; 
    } 
    else 
     echo "Return Code: " . $_FILES["File"]["error"] . "<br>"; 
}?> 

我得到的消息是 “查询失败......”

这是我的数据库:

CREATE TABLE `files` (
`fid`  Int Unsigned Not Null Auto_Increment, 
`title`  VarChar(255) Not Null Default 'Untitled.txt', 
`type`  VarChar(50) Not Null Default 'text/plain', 
`size`  BigInt Unsigned Not Null Default 0, 
`data`  MediumBlob Not Null, 
`created` DateTime Not Null, 
PRIMARY KEY (`fid`)) 
+0

如果您有任何错误,请向他们展示 –

+0

_it无法正常工作 - - 这是无关紧要的。你真的不知道什么是不工作? – t3chb0t

+0

你想上传文件或在数据库中插入记录吗? –

回答

0

检查,如果事情是错误使用的连接:

$cxn = mysqli_connect($host,$user,$password,$dbname) or die(mysqli_error($cxn)); 

通过更改来检查您的查询是否有问题:

mysql_query($query) or die("Query failed..."); 

mysql_query($query) or die(mysqli_error($cxn)); 

,如果有一个将显示错误。