2012-09-10 77 views
0

我有这个脚本,它允许我插入一个csv文件的内容到mysql中,现在,我的问题是,我不知道为什么它把日期和手机号码的字段放在一样的地方。日期和手机号码都是数据库中的不同字段,都是varchar类型。东西不能正确导入脚本

现在,这是代码:

if (isset($_POST['submit'])) { 
    if (is_uploaded_file($_FILES['filename']['tmp_name'])) { 
     echo "<h1>" . "File ". $_FILES['filename']['name'] ." uploaded successfully." . "</h1>"; 
     echo "<h2>Displaying contents:</h2>"; 
     readfile($_FILES['filename']['tmp_name']); 
    } 

    //Import uploaded file to Database 
    $handle = fopen($_FILES['filename']['tmp_name'], "r"); 

    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { 
     $import="INSERT into imovo(date,time,location,rbpos_id,mobile_number) values('$data[0]','$data[1]','$data[2]','$data[3]','$data[4]')"; 

     mysql_query($import) or die(mysql_error()); 
    } 

    fclose($handle); 

    print "Import done"; 

它将无法正常上传数据。 这里是如何上载数据,且数据不会全力以赴到数据库:

8/31/12,12:34:40,Tirane1,2345,662080090 8/32/2012,15:34:40 PM,Tirane2,2345,662080091 8/33/2012,18:34:40 PM,Tirane3,2345,662080092Import done 

如果你看到,日期和手机号码一起去..

+0

你可以请发表您的CSV的样本? – FirmView

+0

当然..这是.. – blerta

+0

http://penelope-ns.net/imovo-1.zip – blerta

回答

0

手机号码和日期别它们之间的空间意味着另一个记录(这是源代码中的新行)。当打印“导入完成”粘贴到手机号码时,它与最后一样。

也许问题是,有没有这样的时间为:

18:34:40 PM 

这是不是18时34分四十秒或下午六时34分40秒

+0

它必须是我的csv你说的东西..你必须是正确的! – blerta