2015-04-27 21 views
1

我想上载一个csv文件并将其保存在数据库中。问题是其返回的通知错误Php csv上传错误

注意:未定义的常量CSV用途 - 假定 d 'CSV':行\ XAMPP \ htdocs中\ NAG \ ADMIN \程序\ upload_case.php 5

通知:未定义的常量大小的使用 - 假定 '尺寸' 中 d:线\ XAMPP \ htdocs中\ NAG \管理员\过程\ upload_case.php 5

通知:未定义指数:CSV在 d:在第5行

由于2-的调试时间我都坚持了下来\ XAMPP \ htdocs中\ NAG \ ADMIN \程序\ upload_case.php,可有一个人请帮助修复。

下面是代码。

<?php  
include "../config/config.php"; 

if ($_FILES[csv][size] > 0) { 

    //get the csv file 
    $file = $_FILES[csv][tmp_name]; 
    $handle = fopen($file,"r"); 

    //loop through the csv file and insert into database 
    do { 
     if ($data[0]) { 
      mysql_query("INSERT INTO case_view (
        courtname, casenumber, year, pfname, plname, 
        cell, fhearing, cstatus, cdescri 
       ) VALUES (
        '" . addslashes($data[0]) . "', 
        '" . addslashes($data[1]) . "', 
        '" . addslashes($data[2]) . "', 
        '" . addslashes($data[3]) . "', 
        '" . addslashes($data[4]) . "', 
        '" . addslashes($data[5]) . "', 
        '" . addslashes($data[6]) . "', 
        '" . addslashes($data[7]) . "', 
        '" . addslashes($data[8]) . "' 
       ) 
      "); 
     } 
    } while ($data = fgetcsv($handle, 1000, ",", "'")); 
    // 

    //redirect 
    header('Location: import.php?success=1'); die; 
    // echo "Import Successfull"; 
} 

?>

+0

您可以考虑使用'PDO'用'出于性能方面的准备statements'。 –

回答

3

当您使用$_FILES[csv]没有quotes就会认为csv是恒定的,所以用quotes包起来,然后再试一次。试着用 -

if ($_FILES['csv']['size'] > 0) { 
    ..... 
    $file = $_FILES['csv']['tmp_name']; 

添加检查它 -

if (!empty($_FILES['csv']['size']) && $_FILES['csv']['size'] > 0) { 
     .............. 
+0

解决谢谢,通过添加行情2通知错误消失,但仍然我得到1通知错误注意:未定义的索引:csv在D:\ xampp \第5行 –

+0

htdocs \ nag \ admin \ process \ upload_case.php更新了答案。 –

+0

现在我看不到任何错误,但直接退出if循环 –

0

你有一个语法错误。您在第5行打开if块,但从未在while循环后关闭它。

+0

谢谢,我关闭了if循环,但我开始得到通知错误 注意:使用未定义的常量csv - 在第5行D:\ xampp \ htdocs \ nag \ admin \ process \ upload_case.php中假定'csv' 注意:使用未定义的常量大小 - 在第5行D:\ xampp \ htdocs \ nag \ admin \ process \ upload_case.php中假定'size' 注意:未定义索引:csv在D:\ xampp \ htdocs \ nag \ admin \ process \ upload_case.php on line 5 –

+0

另一个语法错误,由BOSE – V13Axel