• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

MySQL PHP Polskie znaki pomocy!!!

+1 głos
1,853 wizyt
pytanie zadane 4 września 2015 w C i C++ przez acab0001 Początkujący (410 p.)

Witam - to nie jest tak ze nie przegladalem forum, nie szukalem w googlach. 

Robię stronę z Quizem w PHP/MySQL i juz 2 dni proboje ustawić polskie znaki, żaden sposób nie działa 

Oczywiście cała baza jest w utf8_polish_ci. Strona normalnie obsługuje polskie znaki, poza danymi z bazy.

Proszę niech ktoś mi powie o co kaman?

Cały kod ze strony:

<?php
session_start();
if(!isset($_SESSION['zalogowany'])){
header('Location:index.php');
exit();
}

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">


<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>SUPER RODZIC</title>
<link href="styl1.css" rel="stylesheet" />
</head>

<body>
<?php
echo "<h1>Witaj ".$_SESSION['user']."!!!       ".$_SESSION['email']."<br><br></h1>";
echo "<p>Zdobyłeś: ".$_SESSION['punkty']." punktów";
echo " | Poziom: ".$_SESSION['poziom']."</p></br></br>";
echo '<p><a href="logout.php">Wyloguj</a></p>';
require_once "connect.php";
$polaczenie= @new mysqli($host, $db_user, $db_password, $db_name);
mysql_query("SET CHARSET utf8");
mysql_query("SET NAMES 'utf8' COLLATE 'utf8_polish_ci'");
mysql_select_db($db_name);
$nrpytania=$_SESSION['nrpytania'];
$sql="SELECT * FROM quiz WHERE id='$nrpytania'";
$rezultat=$polaczenie->query($sql);

$wiersz=$rezultat->fetch_assoc();
			$_SESSION['id']=$wiersz['id'];
			$_SESSION['pytanie']=$wiersz['pytanie'];
			$_SESSION['odpa']=$wiersz['odpowiedza'];
			$_SESSION['odpb']=$wiersz['odpowiedzb'];
			$_SESSION['odpc']=$wiersz['odpowiedzc'];
			$_SESSION['poprawna']=$wiersz['poprawna'];
			$pytanie=$_SESSION['pytanie'];
			$odpowiedza=$_SESSION['odpa'];
			$odpowiedzb=$_SESSION['odpb'];
			$odpowiedzc=$_SESSION['odpc'];
			$poprawnaodp=$_SESSION['poprawna'];
			
if (isset ($_SESSION['dobrze']) && ($_SESSION['dobrze'] == true)) {
	echo $_SESSION['dobra'];
	}
if (isset ($_SESSION['dobrze']) && ($_SESSION['dobrze'] == false)) {
	echo $_SESSION['zla'];
	}
echo<<<END
<form action="quiz.php" method="post">
<p>$pytanie</p><br />
<input type="radio" name="odp" value="a"/>$odpowiedza<br />
<input type="radio" name="odp" value="b"/>$odpowiedzb<br />
<input type="radio" name="odp" value="c"/>$odpowiedzc<br /><br />
<input type="submit" value="Zatwierdź"/>
</form>
END;
?>

 

2 odpowiedzi

+1 głos
odpowiedź 4 września 2015 przez Comandeer Guru (609,520 p.)
wybrane 4 września 2015 przez acab0001
 
Najlepsza
E, panie… Łączysz się przez mysqli a wysyłasz zapytania przez mysql - jak to ma działać?

Poza tym - obsługuj błędy! Jak masz w tyłku błędy, to skrypt ma w tyłku Ciebie ;) http://php.net/mysqli_error
komentarz 4 września 2015 przez acab0001 Początkujący (410 p.)

Wow - to takie proste jak juz wiesz o co chodzi ;-p 

Dzieki wielkie, juz dziala - wystarczy znac składnię dla mysqli. tzn zamiast:

mysql_query("SET CHARSET utf8");

mysql_query("SET NAMES 'utf8' COLLATE 'utf8_polish_ci'");

wystarczyło dać:

$polaczenie->query("SET NAMES 'utf8' COLLATE 'utf8_polish_ci'");
$polaczenie->query("SET CHARSET utf8");

i działczy laugh

komentarz 25 kwietnia 2017 przez Kirył Rumiancew Nowicjusz (100 p.)
QURNAAAAAA DZIEKI. DZIAŁA

 

Siedziałem nad tym godzinę, i jeszcze w notepadzie++ trzeba było zrobić konwersję na UTF 8 BOM - i wszystko śmiga
0 głosów
odpowiedź 25 kwietnia 2017 przez Leszek Szymański Gaduła (3,180 p.)

Ogarnij też:

$sql="SELECT * FROM quiz WHERE id='$nrpytania'";

sql injection

Podobne pytania

0 głosów
2 odpowiedzi 1,244 wizyt
0 głosów
5 odpowiedzi 18,824 wizyt
pytanie zadane 17 kwietnia 2015 w SQL, bazy danych przez intoksynator Gaduła (3,450 p.)
0 głosów
2 odpowiedzi 999 wizyt
pytanie zadane 16 września 2018 w PHP przez Akiz521 Początkujący (480 p.)

93,788 zapytań

142,754 odpowiedzi

323,429 komentarzy

63,394 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...