Witam mam problem z kodowaniem polskich znaków wcześniej miałem takie łączenie się z bazą i wykonanie zapytania tylko że wtedy pojawiały się kszaki
$polaczenie = new mysqli($host, $db_user, $db_password, $db_name);
if ($polaczenie->connect_errno!=0)
{
echo "Error: ".$polaczenie->connect_errno;
}
else
{
$los=rand(1,12);
echo($los);
$rezultat = $polaczenie->query("SELECT * FROM Npytania WHERE id='$los'");
$wiersz = $rezultat->fetch_assoc();
$_SESSION['pytanie']=$wiersz['pytanie'];
echo($wiersz['pytanie']);
}
szukałem odpowiedzi znalazłem że lepiej używać PDO napisałem taki kod tylko że nic się nie wyświetla i nie wiem gdzie jest cały problem.
$polaczenie = new PDO("mysql:host=$host;dbname=$db_name;charset=utf8", $db_user, $db_password,
[PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'"]);
if ($polaczenie->connect_errno!=0)
{
echo "Error: ".$polaczenie->connect_errno;
}
else
{
$los=rand(1,12);
echo($los);
$rezultat = $polaczenie->query("SELECT * FROM Npytania WHERE id='$los'");
$wiersz = $rezultat->fetchAll(PDO::FETCH_ASSOC);
$_SESSION['pytanie']=$wiersz['pytanie'];
echo($wiersz['pytanie']);
}
wszystko się łączy wszystko jest niby ok błąd wydaje się byś na poziomie zapytania query lub tej funkcji fetchAll(PDO::FETCH_ASSOC);
w pierwszym kodzie kszaki w drugim nic się nie dzieje i nie wiem dlaczego