|
|
|
|
<?
include "config.php";
//считываем данные из файла
$row = 1;
$handle = fopen("categories.csv", "r");
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$num = count($data);
// echo "<p> $num полей в строке $row: <br /></p>\n";
$row++;
for ($c=0; $c < $num; $c++) {
// echo $data[$c] . "<br />\n";
//Делаем запрос на добавление
$sql = "INSERT INTO csv VALUES ('$data[$c],'$data[$c]','$data[$c]')";
if(mysql_query($sql))
{
echo "Данные успешно добавлены!";
}
else echo mysql_error();
}
}
fclose($handle);
?>
|
В результате выполения скрипта выводит ошибку
You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right
syntax to use near
'Пример1;Пример2;Пример3','Пример1;Пример2;Пример3')' at line 1
|
Фот структура таблицы csv
CREATE TABLE `csv` (
`a` varchar(10) NOT NULL default '',
`b` varchar(10) NOT NULL default '',
`c` varchar(10) NOT NULL default ''
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
|
| |
|
|
|
|
|
|
|
для: ols
(13.10.2008 в 01:32)
| | У вас отсутствует в запросе одиночная закрывающая кавычка для первого значения. Вместо
<?php
$sql = "INSERT INTO csv VALUES ('$data[$c],'$data[$c]','$data[$c]')";
?>
|
следует писать
<?php
$sql = "INSERT INTO csv VALUES ('$data[$c]','$data[$c]','$data[$c]')";
?>
|
| |
|
|
|