function connect() {
$connect = mysql_connect('localhost', 'frank', 'delgado') or die(mysql_error());
}
///////////////////////////////////////////////////////////////////////////////////////////////////
function createProduct($Name_product="",$Price="",$Opis_product=""){
connect();
mysql_query("SET NAMES 'utf8'");
mysql_select_db('products');
$new = mysql_query("INSERT INTO products
(Name_product, Price, Opis_Product)
VALUES('$Name_product','$Price','$Opis_product')");
}
//////////////////////////////////////////////////////////////////////////////////////////
//createProduct("Продукт 3","1233","Описание 1");
$handle = fopen("tabl.csv", "r");
while (($data = fgetcsv($handle, 1000, ";")) !== FALSE) {
$num = count($data);//count - kol-vo elemov massa. (v dannom sluchai 3 stolba)
//echo "<p> $num poley v stroke $row: <br /></p>\n";
//$row++;
for ($c=0; $c < $num; $c++) {
//echo $data[$c] . "<br />\n";
if ($c == 0) {
mysql_query("SET NAMES 'utf8'");
$name = $data[$c];
echo $name.' ';
} elseif ($c == 1) {
$price = $data[$c];
echo $price.' ';
} elseif ($c == 2) {
$opis = $data[$c];
echo $opis.'<br />';
createProduct("$name","$price","$opis");
}
}
}
fclose($handle);
Отдельно от CSV функция createProduct добавляет в MySQL Русские слова баз проблем.
При считывании данных из CSV эта же функиця добавляет в MySQL Английиские слова баз проблем. Но вот вместо русских слов появляются ПУСТЫ ПОЛЯ без каких либо символов.
Код создан в Noteped++ кодировка UTF-8(без BOM). БД, таблица и все строки в ней имеют кодировку utf8_general_ci. ОС - Виндовс 7.