Budaa
(Pbuderaski)
29 Wrzesień 2010 18:54
#1
Witam mam plik .php który zawiera kod php jak i xhtml. W edytorze mam ustawione kodowanie UTF-8.
Gdy mam ustawiony meta taga na utf-8 to wszystkie polskie litery w php zamieniają się w krzaczki, natomiast gdy wywalę ten wpis to litery w php wracają do normy ale za to wszystkie litery napisane w html zmieniają się w krzaczki?
Wie ktoś może w czym leży problem?
Pozdrawiam
drobok
(Drobok)
29 Wrzesień 2010 18:57
#2
header( 'Content-Type: text/html; charset=utf-8' ); [/code]
M11
(master)
29 Wrzesień 2010 19:15
#3
Budaa
(Pbuderaski)
29 Wrzesień 2010 19:34
#4
Hmm
No dobra, dzięki, mniej więcej działa. : )
Teraz we wszystkich danych z db w miejscach polskich znaków są “?” (W bazie jest wszystko ok).
Tutaj na przykładzie pobierania i wyświetlania nazwy użytkownika:
<?php
session_start();
header( 'Content-Type: text/html; charset=utf-8' );
$host = "xxxl";
$login = "xxxa";
$haslo = "xxx";
$db = "xxxa";
$baza = mysql_connect($host , $login , $haslo)
or die ("Błąd, sprawdź połączenie z serwerem");
mysql_select_db($db , $baza);
$user = $_POST['user'];
$result = mysql_query("SELECT
imie,
nazwisko,
firma,
mail,
haslo
FROM Users
WHERE mail='$user' ")
or die(mysql_error());
mysql_query('SET NAMES \'utf8\'');
while($row=mysql_fetch_array($result)) {
$haslo=$row["haslo"];
$imienazw=$row["imie"] . " " . $row["nazwisko"];
$firma_log=$row["firma"];
$imie_log=$row["imie"];
$nazwisko_log=$row["nazwisko"];
$mail_log=$row["mail"];
}
if (md5($_POST['pass']) == $haslo) {
echo ("Witaj " . $imienazw . ". Zostales pomyslnie zalogowany!
");
echo 'Przejdz dalej';
$_SESSION['log']="tak";
$_SESSION['imie']=$imie_log;
$_SESSION['nazwisko']=$nazwisko_log;
$_SESSION['firma']=$firma_log;
$_SESSION['mail']=$mail_log;
$_SESSION['imienazw']=$imienazw;
}
else {
echo "Podales zle haslo! ";
echo 'Wróć';
$_SESSION['log']="nie";
}
?>[/code]
@EDIT
Ok przeniosłem
[code]mysql_query(‘SET NAMES ‘utf8’’);
wyżej i wszystko działa, wielkie dzięki ; )