Autor Zpráva
ogamika
Profil *
Zdravím ,

chci se zeptat, ať jsem zkoušel jak jsem zkoušel - chci otevřít soubor (.csv ) a hodit ho do DB postupně.
Bohužel mi nenačítá diakritika :( zkoušel jsemvšechny kódování měnit .. už nevím jak, dokáže někdo poradit ?


<?php


echo("<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01//EN' 'http://www.w3.org/TR/html4/strict.dtd'>");
echo("<head> ");

echo("    <!-- Encoding (UTF-8) --> ");
echo("    <meta http-equiv='Content-Type' content='text/html; charset=windows-1250'>   ");
echo("    <meta http-equiv='Content-language' content='cs'> ");
  
echo("  </head> ");
echo("<body>");


$row = 1;
if (($handle = fopen("data.csv", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $num = count($data);
        echo "<p> $num fields in line $row: <br /></p>\n";   
        $row++;
        for ($c=0; $c < $num; $c++) {
            $blackpowder = $data;
            $dynamit = implode(";", $blackpowder);
            $pieces = explode(";", $dynamit);
            $col1 = $pieces[0];
            $col2 = $pieces[1];
            $col3 = $pieces[2];
            $col4 = $pieces[3];
            $col5 = $pieces[5];
            
            
            /*mysql_query("
                INSERT INTO `xxxxxx` 
                    (`xxx`,`xxx`,`xxx`,`xxxx`,`xxx`) 
                VALUES 
                    ('".$col1."','".$col2."','".$col3."','".$col4."','".$col5."')
            ");  */
            
            echo ("
                INSERT INTO `xxxxxx` 
                    (`xxx`,`xxx`,`xxx`,`xxxx`,`xxx`) 
                VALUES 
                    ('".$col1."','".$col2."','".$col3."','".$col4."','".$col5."');  <br> 
            "); 
            
            
        }
    }
}




?>
Davex
Profil
Co to znamená „Bohužel mi nenačítá diakritika“ a „zkoušel jsemvšechny kódování měnit“? Kde, co a jak?

1) Především je potřeba určit, v jakém kódování je CSV soubor.
2) Pro převod do správného kódování se dá použít třeba iconv.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: