2015-05-15 3 views
0

с моим этим кодом это также импортное название excel. Я хочу пропустить заголовок, пока я вставляю записи в базу данных. Это мой загрузить файл CSV, я хочу, чтобы пропустить заголовок столбцов в импорте, как это возможно я знаю, что это возможно ..skip title import csv file

<?php 
include 'header.php'; 
include 'footer.php'; 
if(isset($_POST["Import"])) 
{ 
    $db= 'ashutosh'; // Database Name. 
    mysql_select_db($db) or die (mysql_error()); 
    $filename=$_FILES["file"]["tmp_name"]; 
    if($_FILES["file"]["size"] > 0) 
    { 
    $file = fopen($filename, "r"); 
    while (($emapData = fgetcsv($file, 10000, ",")) !== FALSE) 
    { 
    $sql = "INSERT into contact(user_id,contact_1,contact_2,contact_3,email,tin_no,cst_no) values ('$emapData[1]','$emapData[2]','$emapData[3]','$emapData[4]','$emapData[5]','$emapData[6]','$emapData[7]')"; 
    mysql_query($sql); 
    } 
    fclose($file); 
    echo "<script>"; 
    echo "swal('Sucess!', 'File Imported Sucessfully!','success')"; 
    echo "</script>"; 
    } 
    else 
    { 
    echo "<script>"; 
    echo "sweetAlert('oops','Select Csv File','error')"; 
    echo "</script>"; 
    } 
} 
?> 
<div class="wrapper row-offcanvas row-offcanvas-left"> 
    <?php include 'admin_leftside.php'; ?> 
<aside class="right-side">     
<section class="content-header"> 
    <h1>Upload Csv</h1> 
    <ol class="breadcrumb"> 
    <li><a href="#"><i class="fa fa-dashboard"></i> Home</a></li> 
    <li class="active">Upload Csv</li> 
    </ol> 
</section> 
<form enctype="multipart/form-data" method="post" role="form"> 
    <section class="content"> 
    <div class="row"> 
    <div class="col-md-6"> 
     <div class="box box-primary"> 
     <div class="box-header"></div> 
      <div class="box-body"> 
      <form method="post"> 
       <div class="form-group"> 
       <label for="exampleInputFile">File Upload</label> 
       <input type="file" name="file" id="file" size="150"> 
       <p class="help-block">Only CSV File Import.</p> 
       </div> 
       <div class="box-footer"> 
       <button type="submit" class="btn btn-primary" id="submit" name="Import" >Submit</button> 
       </div> 
      </div> 
     </div> 
     </div> 
    </div> 
</form> 

ответ

0

Если первый столбец является один, содержащим название (в основном это), то почему вы не используете логическое значение, чтобы указать его. Например: -

$isTitleSkipped = false; 
while (($emapData = fgetcsv($file, 10000, ",")) !== FALSE) 
{ 
     if(!$isTitleSkipped) 
     { 
     $isTitleSkipped = true; 
     continue; 
     } 

$sql = "INSERT into contact(user_id,contact_1,contact_2,contact_3,email,tin_no,cst_no) values ('$emapData[1]','$emapData[2]','$emapData[3]','$emapData[4]','$emapData[5]','$emapData[6]','$emapData[7]')"; 
mysql_query($sql); 
} 

Предупреждение: - Прекратите использование mysql_ *. Устаревший.

+0

ЭТО НЕ РАБОЧАЯ –

+0

это идет в бесконечном цикле @Let мне увидеть –

0

я получил свой результат на этом пути

$k= 1; 
$file = fopen($filename, "r"); 
while (($emapData = fgetcsv($file, 10000, ",")) !== FALSE) 
{ 
    if($k!=1) 
    { 
    $sql = "INSERT into contact(user_id,contact_1,contact_2,contact_3,email,tin_no,cst_no) values ('$emapData[1]','$emapData[2]','$emapData[3]','$emapData[4]','$emapData[5]','$emapData[6]','$emapData[7]')"; 
    mysql_query($sql); 
    } 
    $k++; 
}