2016-08-23 4 views
1

코드를 작성해야합니다. 이름을 가진 사람의 전자 메일 ID를 가져와야합니다.이 시트는 데이터베이스에 엑셀 시트에 저장되지만, 문제가 있다는 것은 저를 잘못 표시하는 것입니다. 파일은 .csv 형식으로 파일이 어디에 도움이되는지,이 개념에 새로운 오전, 내가 어딘가에 잘못되면 용서해주십시오.데이터베이스로 CSV 파일 데이터 가져 오기

대신 이름

$_FILES['sel_file'] ['tmp_name']; 

변화의 임시 이름을 사용하는

<form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post" enctype="multipart/form-data"> 
     <input type="file" name="sel_file" size="20" /><br /> 
     <input type="submit" name="submit" value="Submit" /> 
    </form> 

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

    if(isset($_POST["submit"])) 
    { 
     $fname = $_FILES['sel_file']['tmp_name']; 
     echo'Upload file name is'.$fname.' '; 
     $chk_ext = explode(".",$fname); 

    if(strtolower(end($chk_ext)) == "csv"){ 

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

    while(($data = fgetcsv($handle, 1000, ",")) !== false) 
     { 
      $sql = "INSERT into import_email (vault_no, name, email) values ('".$_SESSION['vault_no']."', '$data[0]', '$data[1]')"; 
      mysql_query($sql) or die(mysql_error()); 
     } 
     fclose($handle); 
     echo "Successfully imported! "; 
    }else{ 
     echo "Invalid file!"; 
    } 
    } 
?> 

답변

0

import.php이에 :

$_FILES['sel_file'] ['name']; 

$_FILE['input_file']의 예는

입니다
[input_file] => Array 
    (
     [name] => MyFile.jpg //<-------- This is the one you should use because it contains the extension (that you are checking for) 
     [type] => image/jpeg 
     [tmp_name] => /tmp/php/php6hst32 //<----------- this is the one you used 
     [error] => UPLOAD_ERR_OK 
     [size] => 98174 
    ) 

그래서 당신의 PHP 부분은 다음과 같아야합니다

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

    if (isset($_POST["submit"])) { 
     $fname = $_FILES['sel_file']['name']; // Changed only this 
     echo 'Upload file name is' . $fname . ' '; 
     $chk_ext = explode(".", $fname); 

     if (strtolower(end($chk_ext)) == "csv") { 

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

      while (($data = fgetcsv($handle, 1000, ",")) !== false) { 
       $sql = "INSERT into import_email (vault_no, name, email) values ('" . $_SESSION['vault_no'] . "', '$data[0]', '$data[1]')"; 
       mysql_query($sql) or die(mysql_error()); 
      } 
      fclose($handle); 
      echo "Successfully imported! "; 
     } else { 
      echo "Invalid file!"; 
     } 
    } 
    ?> 
+1

감사 톤 선생님을 ..! –

관련 문제