2013-10-01 3 views
0

mysql에 CSV 파일을 가져 오는 데 문제가 있습니다.이 주제에 익숙하지 않습니다. 여기에 CSV 파일을 mysql로 ​​가져 오기 위해 사용하려는 코드가 있습니다. 아이디어가 없습니다. 왜 여전히 오류가 나는지. 코딩에있어 잘못된 부분을 확인하는 데 도움이 필요한 사람이 필요합니다.오류 가져 오기 csv를 mysql php jquery

import.php

<script> 
     $(document).ready(function() { 

       $('#submit').live('click', function(){ 
        $("#imageform").submit(); 

       }); 
      }); 




      </script> 

    </head> 
    <body> 
    <div id="imp1"> 
    <div id="import">Importing into Current Server</div> 
    <form id="imageform" method="post" enctype="multipart/form-data" action="validate.php"> 
    <div class="far"> 
     <label id="sel">Upload File</label> 
      <div class="far1"> 
      <div id="preview"></div> 
    <input type="file" name="filename" id="filename" /> 
    </div> 
    <div class="clear"></div> 
    </div> 
    <div><a href="#"><input id="submit" type="submit" name="submit" value="submit" /><span></span></a></div></form> 
    </div> 
    </body> 

mysql.php

<?php 
$mysql_hostname = "localhost"; 
$mysql_user = "root"; 
$mysql_password = ""; 
$mysql_database = "sample"; 
$prefix = ""; 
$bd = mysql_connect($mysql_hostname, $mysql_user, $mysql_password) or die("Could not connect database"); 
mysql_select_db($mysql_database, $bd) or die("Could not select database"); 
?> 

validate.php 도와

 include "mysql.php"; //Connect to Database 

     $deleterecords = "TRUNCATE TABLE customer"; 
     mysql_query($deleterecords); 

     //Upload File 
     if(isset($_POST) and $_SERVER['REQUEST_METHOD'] == "POST") 
     { 
      $fname = $_FILES['filename']['name']; 

      $chk_ext = explode(".",$fname); 

      if(strtolower($chk_ext[1]) == "csv") 
      { 

       $filename = $_FILES['filename']['name']; 
       $handle = fopen($filename, "r"); 

       while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) 
       { 
        $sql = "INSERT into customer(item2,item3,item4,item5,item6,item7,item8,item9,item10,item11) 
    values('$data[0]','$data[1]','$data[2]','$data[3]','$data[4]','$data[5]','$data[6]','$data[7]','$data[8]','$data[9]')"; 
//item1 is AI 
        mysql_query($sql) or die(mysql_error()); 
       } 

       fclose($handle); 
       echo "Successfully Imported"; 
      } 
      else 
      { 
       echo "Invalid File"; 
      }  
     } 


     ?> 

감사합니다.

+1

어떤 오류가 발생합니까? –

+0

서버 오류입니다. localhost/import/import/validate.php를 검색하는 동안 웹 사이트에서 오류가 발생했습니다. 유지 관리가 잘못되었거나 잘못 구성되었을 수 있습니다. << 테이블을 확인할 때 auto increment로 설정 한 item1의 값이 증가하고 있습니다. 이제 매우 혼란 스럽습니다. – art

+1

은 매우 일반적인 오류입니다. 중복 된 함수 이름, 따옴표 불일치,';'등의 부족으로 인해 발생할 수 있습니다. 로그 파일을보고 실제 오류가 무엇인지 확인하십시오. –

답변

1

중복 된 함수 이름, 일치하지 않는 따옴표, 부족으로 인해 발생할 수 있습니다.

이 경우 문제는 $ fname = $ _FILES [ 'filename'] [ 'name'];을 대체하면 해결됩니다. -at 9 줄에 $ filename = $ _FILES [ 'filename'] [ 'name']; 16 호선에서