Do mojego projektu używam bazy, którą tworzę w excelu, następnie zapisuję jako plik csv i importuję w phpmyadmin. Używam polskich znaków i znaków specjalnych.
Zapisuję plik w excelu jako csv oddzielony przecinkami, importuję w phpmyadmin z kodowaniem windows-1250. Wtedy w bazie widzę dane z polskimi znakami i znakami specjalnymi ale na stronie już się krzaczy - strona jest w utf-8 więc jest to zrozumiałe.
+
Próbuję więc zapisać jako csv i potem w notepadzie++ zmieniam kodowanie, nie mogę wówczas w ogóle zaimportować pliku:
Próbowałem też w ustawieniach excela ustawić kodowanie na utf-8 i zapisać jako csv ale w bazie wygląda to w ten sposób:
Metoda porównywania napisów w opcjach tabeli jest ustawiona na utf8_polish_ci, w bazie także.
Kod ze strony, w której wyświetlam parametry z bazy:
<!DOCTYPE HTML>
<html lang="pl">
<head>
<meta charset="utf-8" />
<title>Test</title>
<meta name="description" content="Co jest na stronie" />
<meta name="keywords" content="test" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<link rel="stylesheet" href="style.css" type="text/css" />
</head>
<body>
<?php
require_once "connect.php";
$polaczenie = @new mysqli($host, $db_user, $db_password, $db_name);
$dupa = "V40";
if ($polaczenie->connect_errno!=0)
{
echo"Error: ".$polaczenie->connect_errno."Opis: ".$polaczenie->connect_error;
}
else
{
$sql = "SELECT * FROM `table 13` WHERE id='1'";
if ( $rezultat = @$polaczenie->query($sql))
{
$liczba_rekordow=$rezultat->num_rows;
echo $liczba_rekordow;
if ($liczba_rekordow>0)
{
$wiersz = $rezultat->fetch_assoc();
$Kolumna1 = $wiersz['kolumna1'];
$Kolumna2 = $wiersz['kolumna2'];
$Kolumna3 = $wiersz['kolumna3'];
echo $Kolumna1;
echo '<br/>';
echo $Kolumna2;
echo '<br/>';
echo $Kolumna3;
}
}
}
$polaczenie->close();
echo<<<END
<div id="container">
<div id="logo">
<h1>Nazwa strony</h1>
</div>
<div id="add">
reklama
</div>
<div id="content">
<br/><br/><br/><br/><br/><br/><br/><br/>
END;
?>
<div id="footer">
nazwastrony.com © Wszelkie prawa zastrzeżone
</div>
</body>
</html>