Ошибка при импорте CSV в Mysql

rolph

Новичок
Ошибка при импорте CSV в Mysql

Сделал форму загрузки файла, но происходит ошибка загрузки CSV файла
PHP:
<?php

include("config.php"); 

if(!empty($_FILES['passed_file']['tmp_name']))
{
  $f=fopen($_FILES['passed_file']['tmp_name'], 'rb');
  if(!$f) die('error opening file');
  while($row=fgetcsv($f, 128,';'))
  {
   echo $row[0].(mysql_query("INSERT INTO listing VALUES ('', '$item[0]', '$item[1]', '$item[2]', '$item[3]','$item[4]').'<br />';
   echo mysql_error();
}
  fclose($f);
}
?>
Формат БД:
PHP:
  `id` int(18) NOT NULL auto_increment,
  `fio` varchar(200) NOT NULL default '',
  `birth` date NOT NULL default '0000-00-00',
  `date_in` date NOT NULL default '0000-00-00',
  `position` varchar(200) NOT NULL default '',
  `department` varchar(200) NOT NULL default ''
Содержимое CSV:
PHP:
Иванов Петр Михайлович;1964-12-20;2006-10-23;Зав.каф;кафедра 4520
 

Sokil.Dmytro

Новичок
fgetcsv часто криво распарсивает файлы. Поищи тут на сайте или на пхпнете нормальную - 90% что проблема решится!
 

nskauto

Новичок
Re: Ошибка при импорте CSV в Mysql

echo $row[0].(mysql_query("INSERT INTO listing VALUES ('', '$item[0]', '$item[1]', '$item[2]', '$item[3]','$item[4]').'<br />';
У тебя как минимум здесь ошибка: открыто - 3 скобки, закрыта - 1
 

rolph

Новичок
Сейчас загружает всё, кроме первой даты birth

PHP:
   echo $row[0].(mysql_query("INSERT INTO listing (fio, birth, date_in, position, department) VALUES ('".addslasheS($row[0])."', ".addslashes($row[1]).",'".addslashes($row[2])."','".addslasheS($row[3])."','".addslasheS($row[4])."')")).'<br />';
 

nskauto

Новичок
Автор оригинала: rolph
Сейчас загружает всё, кроме первой даты birth

PHP:
   echo $row[0].(mysql_query("INSERT INTO listing (fio, birth, date_in, position, department) VALUES ('".addslasheS($row[0])."', ".addslashes($row[1]).",'".addslashes($row[2])."','".addslasheS($row[3])."','".addslasheS($row[4])."')")).'<br />';
Ну что тебе сказать - дебаг, дебаг и еще раз дебаг) Не понимаю как ты синтаксическую ошибку эту не заметил, а сразу так определил что не загружается файл?
 

AmdY

Пью пиво
Команда форума
echo mysql_error();
ты же вроде дебажишь, что ещё непонятно, если пишется ошибка, давай её сюда.
и переходи на редакторы с подсветкой синтаксиса, вот даже на форуме видно, что со скобками проблемы.
 

rolph

Новичок
Автор оригинала: AmdY
echo mysql_error();
ты же вроде дебажишь, что ещё непонятно, если пишется ошибка, давай её сюда.
и переходи на редакторы с подсветкой синтаксиса, вот даже на форуме видно, что со скобками проблемы.
У меня PHPExpert editor.

Проблема была в пропуске 2х апострофов, тут:
PHP:
".addslashes($row[1]).",
 
Сверху