2014-10-20 47 views
0

嗨我试图创建一个简单的上传PHP表单,但是当我上传PDF我收到第8行的错误消息,这里是我的代码;简单上传PHP表单问题

(代码更新)

<?php 

if(isset($_POST['submit'])) 
{ 
     $errors= array(); 
     $file_name = $_FILES['uploadFile']['name']; 
     $file_size =$_FILES['uploadFile']['size']; 
     $file_tmp =$_FILES['uploadFile']['tmp_name']; 
     $file_type=$_FILES['uploadFile']['type']; 
     $value = explode(".", $file_name); 
     $file_ext = strtolower(array_pop($value)); 

     $expensions= array("pdf"); 
     if(in_array($file_ext,$expensions)== false) 
     { 
     $errors="Extension not allowed, please choose a PDF file."; 
     } 

     if($file_size > 9097152) 
     { 
     $errors[]='File size must be excately 2 MB'; 
     }  
     if(empty($errors)==true) 
     { 
     move_uploaded_file($file_tmp,"client_files/bond/uploads/".$file_name); 
//include here insert query** 
echo "The file ".$file_name." has been uploaded."; 
     //echo "Success"; 
     } 
     else 
     { 
     print_r($errors); 
     } 
    } 
    ?> 

而在我的HTML文件中的主体由一个简单的表格;

<div class="body"></div> 
     <div class="grad"></div> 
     <div class="header"> 
      <div>Logo<span>Here</span></div> 
     </div> 
     <br> 
     <div class="login"> 
       <form action="upload.php" method="post" enctype="multipart/form-data"> 
    Please choose a file: <input type="file" name="uploadFile"><br> 
    <input type="submit" value="Upload File"> 
</form> 
     </div> 
+0

定义了“$ pdf”吗? – 2014-10-20 07:55:50

+0

什么是确切的错误消息,你在哪里定义了'$ pdf'? – Rizier123 2014-10-20 07:58:47

+0

致命错误:调用第8行的/public_html/bond/upload.php中的非对象的成员函数Output(),我感觉它的原因$ pdf未定义我需要添加到pdf中以定义什么它? – user3607744 2014-10-20 08:00:11

回答

0
try this 
<div class="body"></div> 
     <div class="grad"></div> 
     <div class="header"> 
      <div>Logo<span>Here</span></div> 
     </div> 
     <br> 
     <div class="login"> 
       <form action="upload.php" method="post" enctype="multipart/form-data"> 
    Please choose a file: <input type="file" name="uploadFile"><br> 
    <input type="submit" name="submit" value="Upload File"> 
</form> 
     </div> 
0

您应该在文件中定义$uploadFile_size变量。这将解决您的问题。

0
Try it 
<?php 

if(isset($_POST['submit'])) 
{ 
     $errors= array(); 
     $file_name = $_FILES['uploadFile']['name']; 
     $file_size =$_FILES['uploadFile']['size']; 
     $file_tmp =$_FILES['uploadFile']['tmp_name']; 
     $file_type=$_FILES['uploadFile']['type']; 
     $value = explode(".", $file_name); 
     $file_ext = strtolower(array_pop($value)); 
     //$file_ext=strtolower(end(explode(".",$file_name))); -->this line wnt work bcoz only variable should be passed inside explode 

     $expensions= array("pdf"); 
     if(in_array($file_ext,$expensions)== false) 
     { 
     $errors="Extension not allowed, please choose a PDF file."; 
     } 

     if($file_size > 2097152) 
     { 
     $errors[]='File size must be excately 2 MB'; 
     }  
     if(empty($errors)==true) 
     { 
     move_uploaded_file($file_tmp,"uploads/".$file_name); 

echo "The file ".$file_name." has been uploaded."; 
     //echo "Success"; 
     } 
     else 
     { 
     print_r($errors); 
     } 
    } 
    ?> 
+0

我已经将它添加到服务器,并用旧的php代码替换它,但它现在还没有上传pdf或显示任何错误消息? – user3607744 2014-10-20 08:34:42

+0

?我将PHP加载到服务器上,它完成了整个上传..%但是当它完成后它变成空白,并且不会将pdf上传到服务器? – user3607744 2014-10-20 08:52:20

+0

任何想法为什么它可能不工作我的结局? – user3607744 2014-10-20 09:19:10

0

字符串用strtolower($字符串)的原型。