Я пытаюсь импортировать CSV-файл в таблицу mysql. Это мой код:импортировать данные из CSV в таблицу mysql, используя php
<?
error_reporting(0);
mysql_connect("localhost","root","");
mysql_select_db("gerov");
$filename='test.csv';
$handle = fopen("$filename", "r");
while (($data = fgetcsv($handle, ",")) !== FALSE)
//foreach(fgetcsv($handle,",") as $data)
{
$import="INSERT into castigatori (id,cod,nume,oras,medalie) values('','$data[0]','$data[1]','$data[2]','$data[3]')";
mysql_query($import) or die("mysql_error()");
print $import."<br>";
}
fclose($handle);
print "Import done";
?>
Ввоз это сделано хорошо, но только если я поставить запятую между каждым словом в файле CSV. Поэтому, если я хочу вставить a, b, c, d, он будет импортироваться только в том случае, если я помещаю эти запятые между ними. Я хочу написать слова в отдельной ячейке следующим образом: a b c d без необходимости вводить запятую и делать вкладку, разделенную между словами. Если я напишу слова с разделителем табуляции, в моей таблице mysql появится следующее: a; b; c; d. Может ли кто-нибудь сказать мне, что делать, чтобы правильно вставить их?
Я это изменилось: в то время как (($ = данные fgetcsv ($ ручка "")) == FALSE!) к этому: в то время как (($ = данные fgetcsv ($ ручка))! == FALSE), но не в моей таблице слова вставляются так: a; б; с; д; – user1421688
Он будет работать в любом случае, так как делим по умолчанию - ','. – Ruel
Можете ли вы показать образец строки вашего файла csv? – Ruel