繁体   English   中英

导入csv并使用php更新mysql中的记录

[英]Import csv and update records in mysql using php

我正在尝试在php中导入一个csv文件并更新mysql数据库中的现有记录,但我的代码无法正常工作,它没有任何错误,但不会更新我的数据库。 这是代码。

<?php  

$connect = mysql_connect("localhost","root",""); 
mysql_select_db("department",$connect); //select the table  

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

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

do { 
    if ($data[0]) { 
        mysql_query("INSERT INTO students (studno, lastname, firstname, mi,    
        sy, sem, course, deptname) 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])."',
            ) 
        "); 
    } 
} while ($data = fgetcsv($handle,1000,",","'")); 

header('Location: admin/uploadinfo.php?success=1'); die; 
} 
?>

尝试这个...

function getdata($csvFile){
    $file_handle = fopen($csvFile, 'r');
    while (!feof($file_handle) ) {
        $line_of_text[] = fgetcsv($file_handle, 1024);
    }
    fclose($file_handle);
    return $line_of_text;
}


// Set path to CSV file
$csvFile = 'test.csv';

$csv = getdata($csvFile);
echo '<pre>';
print_r($csv);
echo '</pre>';

Array
(
    [0] => Array
        (
            [0] => Project
            [1] => Date
            [2] => User
            [3] => Activity
            [4] => Issue
            [5] => Comment
            [6] => Hours
        )

    [1] => Array
        (
            [0] => test
            [1] => 04/30/2015
            [2] => test
            [3] => test
            [4] => test
            [5] => 
            [6] => 6.00
        ));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM